System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及信息处理,特别涉及一种基于分布式的日志数据模式识别方法、系统和电子装置。
技术介绍
1、软件系统使用时,会产生大量的日志信息,这些日志信息对于分析故障、提升系统性能、安全分析以及用户行为分析等均具有重要的意义。日志是可观测性系统的三种基础数据(日志,指标,跟踪)来源之一,对诊断系统状态,复现问题发生时的状态,提供了最为清晰明确的记录。
2、因此,日志分析可以帮助用户了解系统的运行情况、发现问题、优化性能、监测安全和洞察业务,从而提高系统的可靠性、安全性和效率。
3、传统的日志数据规模比较小,对于一个公司或者单一业务系统,软件系统可以部署在单机或者单一的集群机器上即可完成数据的采集和分析。
4、但随着大数据的爆发,对于各种真实运维,诊断,告警,分析等使用场景中,面临日志的来源复杂,日志格式不一,对于大规模的服务是部署给全国甚至全球的终端或者设备提供无间断的服务,实时新增庞大的数据量,现有的技术是需要先对日志进行聚类,合并同类模式,提取出日志模式。
5、虽然目前也有一些工具如logmine,spell,logram,drain等系统,基于频繁项挖掘、聚类或者解析树等提取出日志模式,但这类工具均存在如单机内存限制,或者离线批处理模式,处理耗时长,无法对海量实时日志做实时日志模式提取。因此,实时高效地对海量的分布式数据来源、各种来源类型的复杂日志,进行模式进行提取,发现新模式,并供后续应用,是一个非常重要的问题。
技术实现思路
1、
2、s1:写入阶段,具体为对采集的原始日志数据进行分类和聚合,根据预设的模式进行模式匹配提取;
3、s2:查询阶段,具体为查询选定时间日志范围内的日志签名id,基于该日志签名id进行去重,向存储系统查询对应日志模板并进行合并,获得最终日志模式。
4、进一步地,步骤s1包括:
5、步骤s11:获取日志数据以及读取存储系统中已有的模式识别,初始化日志解析器;
6、步骤s12:对流式日志数据进行批次处理,得到单词列表;
7、步骤s13:检查是否匹配用户预设的日志模式,若满足,则发现日志模式,返回该模式的模板引用,否则执行步骤s14;
8、步骤s14:逐一将每条日志的单词列表输入日志解析器,在日志解析器中,查找并更新该日志所属的模板,未发现所属模板时,则创建新模板,并生成该日志的签名id;
9、步骤s15,存储带有签名id的日志和拥有新签名id的日志模板。
10、进一步地,步骤s12:对流式日志数据进行批次处理,得到单词列表包括:
11、分词步骤s121:对该批次数据,逐一通过分词器,切分成单词列表;
12、合并步骤s122:对单词列表,按预定义单词合并规则进行合并处理,得到合并精简的单词列表;
13、掩码步骤s123:对合并精简的单词列表,按照领域知识,对一些特殊领域单词,时间戳,ip等做掩码处理,得到掩码后的单词列表。
14、进一步地,步骤s14还包括线程安全处理步骤,包括:
15、s141:设置孩子节点集合map为concurrenthashmap类型;
16、s142:使用copyonwritearrayset类型引用模板集合;
17、s143:设置孩子节点的数量,并更新孩子节点集合;
18、s144:更新模板引用,对于未超过阈值的新模式,放入集合,若超过阈值,则挑选模板集合中第一个模板与新模板强制合并;
19、s145:将相同位置不同单词的进行掩码处理,并对整个更新逻辑加锁。
20、进一步地,步骤s2包括:
21、s21:查询用户选定时间范围的数据,基于签名id进行分组去重,获取初步日志模式的签名id列表;
22、s22:基于签名id列表,查找到对应的日志模板并去重;
23、s23:将查找到对应的日志模板作为原始日志,再对所述原始日志进行模式提取,合并相似日志模板,得到最终的日志模式。
24、本专利技术还提供一种基于分布式的日志数据模式识别系统,包括写入装置和查询装置,其中:
25、写入装置用以对采集的原始日志数据进行分类和聚合,根据预设的模式进行模式匹配提取;
26、查询装置用以查询选定时间日志范围内的日志签名id,基于该日志签名id进行去重,向存储系统查询对应日志模板并进行合并,获得最终日志模式。
27、进一步地,所述写入装置包括日志采集单元、写入单元、数据存储单元,其中:
28、日志采集单元用以获取日志数据以及读取存储系统中已有的模式识别,初始化日志解析器;
29、写入单元用以对流式日志数据进行批次处理,得到单词列表,并检查是否匹配用户预设的日志模式,若满足,则发现日志模式,返回该模式的模板引用,若不满足,则逐一将每条日志的单词列表输入日志解析器,并更新日志解析器,查找并更新该日志所属的模板,并生成该日志的签名id;
30、数据存储单元用以存储带有签名id的日志和所有发现的日志模板。
31、进一步地,所述数据存储单元还包括模式识别缓存模块,用以:
32、缓存查询最近查询模式签名和特定来源类型的日志解析器;
33、在模式识别前,读取已识别模板内容,用来初始化日志模式解析器,并缓存下来,用以与单词列表进行比较相似度,判断是否需要产生新模式;
34、在查询时,缓存最近查询签名的id,及其模板内容,避免从存储系统对应的查询获取模板,加快查询速度。
35、本专利技术还提供一种计算机存储介质,所述计算机存储介质可存储有可执行程序,当所述可执行程序在计算机上运行时,所述计算机执行所述的基于分布式的日志数据模式识别方法。
36、本专利技术还提供一种电子装置,所述电子装置包括处理器以及存储器,所述存储器用于存储可执行程序,所述处理器用于执行所述可执行程序以实现所述的基于分布式的日志数据模式识别方法。
本文档来自技高网...【技术保护点】
1.一种基于分布式的日志数据模式识别方法,其特征在于,包括如下步骤:
2.如权利要求1所述的日志数据模式识别方法,其特征在于,步骤S1包括:
3.如权利要求2所述的日志数据模式识别方法,其特征在于,步骤S12:对流式日志数据进行批次处理,得到单词列表包括:
4.如权利要求2所述的日志数据模式识别方法,其特征在于,步骤S14还包括线程安全处理步骤,包括:
5.如权利要求1所述的日志数据模式识别方法,其特征在于,步骤S2包括:
6.一种基于分布式的日志数据模式识别系统,其特征在于,包括写入装置和查询装置,其中:
7.如权利要求6所述的日志数据模式识别系统,其特征在于,所述写入装置包括日志采集单元、写入单元、数据存储单元,其中:
8.如权利要求7所述的日志数据模式识别系统,其特征在于,所述数据存储单元还包括模式识别缓存模块,用以:
9.一种计算机存储介质,其特征是,所述计算机存储介质可存储有可执行程序,当所述可执行程序在计算机上运行时,所述计算机执行权利要求1-5任一所述的基于分布式的日志数
10.一种电子装置,其特征在于,所述电子装置包括处理器以及存储器,所述存储器用于存储可执行程序,所述处理器用于执行所述可执行程序以实现权利要求1-5任一所述的基于分布式的日志数据模式识别方法。
...【技术特征摘要】
1.一种基于分布式的日志数据模式识别方法,其特征在于,包括如下步骤:
2.如权利要求1所述的日志数据模式识别方法,其特征在于,步骤s1包括:
3.如权利要求2所述的日志数据模式识别方法,其特征在于,步骤s12:对流式日志数据进行批次处理,得到单词列表包括:
4.如权利要求2所述的日志数据模式识别方法,其特征在于,步骤s14还包括线程安全处理步骤,包括:
5.如权利要求1所述的日志数据模式识别方法,其特征在于,步骤s2包括:
6.一种基于分布式的日志数据模式识别系统,其特征在于,包括写入装置和查询装置,其中:
7.如权利要求6所述的...
【专利技术属性】
技术研发人员:屈兴,艾丽平,崔文正,王拓,陆林峰,
申请(专利权)人:深圳市溪数科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。