System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及数据处理,特别涉及一种多日志源的日志泛化方法及装置。
技术介绍
1、目前的安全数据采集过程往往需接收多种类型的数据源,不同类型的数据源通常其数据格式和内容不同,在进行集中分析前,需要对原始数据进行提取、转换、筛选,统一数据的格式和表达含义等操作,这个过程就是日志泛化。
2、目前的安全日志泛化方法,存在以下主要问题:
3、(1)传统的日志泛化效率低,在海量数据源下存在解析性能瓶颈;
4、(2)传统的日志泛化,无论匹配正确与否,只能命中单条解析,准确度不高;
5、(3)传统的日志泛化分类不细致,每次解析会加载不相关的解析规则进行匹配,例如每处理一条原始日志,都需要去规则池里匹配所有解析规则;
6、(4)传统的日志泛化对编写泛化规则的人员要求较高,需要手动提取日志样本的特征,编写效率低下。
7、因此,需要提供更高效的日志匹配引擎,将日志匹配到最相关的规则进行解析,提升对海量数据的处理能力以及处理的准确性。
技术实现思路
1、鉴于现有技术中的上述缺陷或不足,本专利技术提供了一种多日志源的日志泛化方法及装置,能够全部的或者部分的解决上述技术问题。
2、本专利技术的一个方面,提供了一种多日志源的日志泛化方法,包括:
3、获取日志源的原始日志,所述原始日志中绑定有该日志源的设备id;
4、加载与该日志源的设备id对应的多个解析规则池,所述多个解析规则池包括优先级由高到低依次排
5、基于所述关键特征,按照优先级从高到低的顺序依次在多个解析规则池中筛选对应日志源的设备id的解析规则,将筛选出的解析规则与所述原始日志进行匹配;若匹配不成功则进入下一优先级的解析规则池中继续对解析规则和原始日志进行匹配;若匹配成功则用匹配成功的解析规则对所述原始日志进行解析;
6、在原始日志解析成功后,输出标准化日志。
7、进一步的,还包括:若原始日志解析不成功,则进入下一优先级的解析规则池中继续对解析规则和原始日志进行匹配,并在匹配成功后对所述原始日志进行解析。
8、进一步的,还包括:若加载与该日志源的设备id对应的多个解析规则池失败,则直接输出非标准化日志。
9、进一步的,还包括:
10、预先获取日志样本,所述日志样本中绑定有日志源的设备id;
11、校验所述日志样本的类型,并将日志样本的类型与解析规则的类型匹配;其中,所述解析规则的类型包括独享关键字、正则解析、共享关键字和分隔符;
12、提取日志样本中与解析规则的类型相关的内容作为关键内容,并将所述关键内容与解析规则名称、设备id绑定后存储至相应类型的解析规则池中。
13、进一步的,将日志样本中的字段构成的多个关键字作为所述独享关键字规则池和共享关键字规则池中的解析规则的关键特征;
14、将每个解析规则对应的关键字字符串分解为多叉树结构,多叉树结构中的每个节点表示字符串中的每个字符;
15、用获取的原始日志中的关键字字符串中的每个字符与所述多叉树的节点进行匹配,若所述节点未匹配成功,则返回至该节点的父节点处继续尝试匹配该父节点的下一个子节点,直至所述关键字的每个字符均匹配成功,则表示解析规则的该关键字被命中;
16、检测命中的解析规则的关键字的数量,将命中关键字最多的解析规则作为与原始日志匹配成功的解析规则。
17、进一步的,将日志样本中的正则表达式作为所述正则规则池中的解析规则的关键特征;
18、若获取的原始日志能够被该正则表达式处理,则将含有该正则表达式的解析规则作为与原始日志匹配成功的解析规则。
19、进一步的,将日志样本中的分隔符作为所述分隔符规则池中的解析规则的关键特征;
20、若获取的原始日志能够被该分隔符切割,则将含有该分隔符的解析规则作为与原始日志匹配成功的解析规则。
21、本专利技术的另一方面,还提供了一种多日志源的日志泛化装置,包括:
22、获取模块,被配置为获取日志源的原始日志,所述原始日志中绑定有该日志源的设备id;
23、规则池加载模块,被配置为加载与该日志源的设备id对应的多个解析规则池,所述多个解析规则池包括优先级由高到低依次排列的独享关键字规则池、正则规则池、共享关键字规则池和分隔符规则池中的至少一个;其中,每个解析规则池中包含有标识所述原始日志的解析规则的关键特征;
24、日志解析模块,被配置为基于所述关键特征,按照优先级从高到低的顺序依次在多个解析规则池中筛选对应日志源的设备id的解析规则,将筛选出的解析规则与所述原始日志进行匹配;若匹配不成功则进入下一优先级的解析规则池中继续对解析规则和原始日志进行匹配;若匹配成功则用匹配成功的解析规则对所述原始日志进行解析;
25、输出模块,被配置为在原始日志解析成功后,输出标准化日志。
26、进一步的,还包括规则池构建模块,被配置为:
27、预先获取日志样本,所述日志样本中绑定有日志源的设备id;
28、校验所述日志样本的类型,并将日志样本的类型与解析规则的类型匹配;其中,所述解析规则的类型包括独享关键字、正则解析、共享关键字和分隔符;
29、提取日志样本中与解析规则的类型相关的内容作为关键内容,并将所述关键内容与解析规则名称、设备id绑定后存储至相应类型的解析规则池中。
30、进一步的,所述日志解析模块被进一步配置为:
31、将日志样本中的字段构成的多个关键字作为所述独享关键字规则池和共享关键字规则池中的解析规则的关键特征;将每个解析规则对应的关键字字符串分解为多叉树结构,多叉树结构中的每个节点表示字符串中的每个字符;用获取的原始日志中的关键字字符串中的每个字符与所述多叉树的节点进行匹配,若所述节点未匹配成功,则返回至该节点的父节点处继续尝试匹配该父节点的下一个子节点,直至所述关键字的每个字符均匹配成功,则表示解析规则的该关键字被命中;检测命中的解析规则的关键字的数量,将命中关键字最多的解析规则作为与原始日志匹配成功的解析规则;
32、将日志样本中的正则表达式作为所述正则规则池中的解析规则的关键特征;若获取的原始日志能够被该正则表达式处理,则将含有该正则表达式的解析规则作为与原始日志匹配成功的解析规则;
33、将日志样本中的分隔符作为所述分隔符规则池中的解析规则的关键特征;若获取的原始日志能够被该分隔符切割,则将含有该分隔符的解析规则作为与原始日志匹配成功的解析规则。
34、本专利技术提供的一种多日志源的日志泛化方法及装置,具有如下有益效果:
35、(1)通过多模匹配和预先构建规则池的方式,在不提升服务资源的本文档来自技高网...
【技术保护点】
1.一种多日志源的日志泛化方法,其特征在于,包括:
2.根据权利要求1所述的一种多日志源的日志泛化方法,其特征在于,还包括:
3.根据权利要求1所述的一种多日志源的日志泛化方法,其特征在于,还包括:
4.根据权利要求1所述的一种多日志源的日志泛化方法,其特征在于,还包括:
5.根据权利要求4所述的一种多日志源的日志泛化方法,其特征在于:
6.根据权利要求4所述的一种多日志源的日志泛化方法,其特征在于:
7.根据权利要求4所述的一种多日志源的日志泛化方法,其特征在于:
8.一种多日志源的日志泛化装置,其特征在于,包括:
9.根据权利要求8所述的一种多日志源的日志泛化装置,其特征在于,还包括规则池构建模块,被配置为:
10.根据权利要求9所述的一种多日志源的日志泛化装置,其特征在于,所述日志解析模块被进一步配置为:
【技术特征摘要】
1.一种多日志源的日志泛化方法,其特征在于,包括:
2.根据权利要求1所述的一种多日志源的日志泛化方法,其特征在于,还包括:
3.根据权利要求1所述的一种多日志源的日志泛化方法,其特征在于,还包括:
4.根据权利要求1所述的一种多日志源的日志泛化方法,其特征在于,还包括:
5.根据权利要求4所述的一种多日志源的日志泛化方法,其特征在于:
6.根据权利要...
【专利技术属性】
技术研发人员:林特超,朱文雷,崔勤,
申请(专利权)人:北京长亭科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。