日志的处理方法及装置、存储介质和处理器与流程

文档序号:37415589发布日期:2024-03-25 19:03阅读:11来源:国知局
日志的处理方法及装置、存储介质和处理器与流程

本技术涉及日志处理,具体而言,涉及一种日志的处理方法及装置、存储介质和处理器。


背景技术:

1、在互联网世界中,服务器,工作站,防火墙等各种网络设备在运行中都会产生日志,包括用户操作记录,警告信息等等。这对运维,监控,安全审计等等是非常重要的,对于问题定位,回溯也起到了很大的帮忙。

2、另外,在网络建设初期,网络设备较少,产生的日志也较少也不大,且日志源包括服务器,防火墙等网络设备自身可以存储这些日志数据。但随着时代的发展,计算机网络变得庞大,日志数量呈指数级增长,设备自身已无法存储大量的日志数据。

3、因此,在这种背景下,出现了日志服务器,用于存储服务器,防火墙等设备在运行过程中产生的日志,并提供查询,分析等功能。由于要支持各式各样服务器,防火墙的日志,并且不同的日志格式不同,日志量又大,所以,日志的解析性能成为了日志服务器的一个关键点。

4、相关技术中,一般采用正则匹配法解析服务器,工作站,防火墙等各种网络设备在运行过程中产生的日志。而且,正则匹配算法可以通过一定规则的描述,匹配字符串中的某些模式串。采用正则匹配法解析网络设备在运行过程中产生的日志存在以下缺点:(1)语法复杂:正则表达式语法虽然很强大,但其使用方法并不总是直观,需要花费一定时间学习掌握;(2)维护困难:由于正则表达式语法复杂,一些特定的正则表达式可能难以理解和维护,尤其是当代码中存在多个正则表达式时;(3)容易出错:由于正则表达式语法灵活,即使写错一个字符也会导致匹配失败,因此容易出现错误,在编写复杂的正则表达式时需要十分小心,并且日志中目标串的内容通常是动态的,因此采用正则匹配法进行网络设备的日志解析时会导致日志文件的解析效果不佳。


技术实现思路

1、本技术的主要目的在于提供一种日志的处理方法及装置、存储介质和处理器,以解决相关技术中采用正则匹配算法解析网络设备在运行过程中产生的日志,导致日志的解析效果不佳的问题。

2、为了实现上述目的,根据本技术的一个方面,提供了一种日志的处理方法。该方法包括:获取待解析的目标日志,其中,所述目标日志为网络设备在运行过程中产生的日志,所述目标日志中至少包括需要解析的n个目标字段,n为正整数;确定所述目标日志对应的格式信息,并依据所述目标日志对应的格式信息,确定用于对所述目标日志进行解析处理的解析模板;对所述解析模板进行解析处理,得到每个目标字段的前缀信息和后缀信息;基于每个目标字段的前缀信息和后缀信息,对所述目标日志进行解析处理,得到对所述目标日志进行解析的解析结果。

3、进一步地,基于每个目标字段的前缀信息和后缀信息,对所述目标日志进行解析处理,得到对所述目标日志进行解析的解析结果包括:通过字符串匹配算法,将每个目标字段的前缀信息与所述目标日志的内容信息进行匹配处理,得到每个目标字段对应的第一匹配结果;通过所述字符串匹配算法,将每个目标字段的后缀信息与所述目标日志的内容信息进行匹配处理,得到每个目标字段对应的第二匹配结果;基于每个目标字段对应的第一匹配结果和每个目标字段对应的第二匹配结果,得到每个目标字段对应的内容信息;依据每个目标字段对应的内容信息,得到对所述目标日志进行解析的所述解析结果。

4、进一步地,所述字符串匹配算法至少包括kmp算法;所述通过字符串匹配算法,将每个目标字段的前缀信息与所述目标日志的内容信息进行匹配处理,得到每个目标字段对应的第一匹配结果包括:获取每个目标字段的前缀信息中的m个字符,其中,m为大于1的正整数;获取所述目标日志的内容信息中的s个字符,其中,s为大于m的正整数;通过所述字符串匹配算法,将每个目标字段的前缀信息中的字符与所述s个字符中的前m个字符进行匹配处理,确定所述前m个字符中与每个目标字段的前缀信息中的字符匹配失败的目标字符;确定所述目标字符之后的m个字符,并将每个目标字段的前缀信息中的字符与所述目标字符之后的m个字符进行匹配处理,得到每个目标字段对应的所述第一匹配结果。

5、进一步地,确定所述目标日志对应的格式信息包括:获取所述目标日志对应的标识信息;获取目标哈希表,其中,所述目标哈希表中至少包括:t种类型的日志文件中每种类型的日志文件对应的标识信息和格式信息,t为正整数;依据所述目标日志对应的标识信息,从所述目标哈希表中获取所述目标日志对应的格式信息。

6、进一步地,在确定所述目标日志对应的格式信息之前,所述方法还包括:获取t种类型的日志文件,其中,t为正整数;确定每种类型的日志文件对应的标识信息;确定每种类型的日志文件对应的格式信息;基于每种类型的日志文件对应的标识信息和每种类型的日志文件对应的格式信息,构建目标哈希表。

7、进一步地,依据所述目标日志对应的格式信息,确定用于对所述目标日志进行解析处理的解析模板包括:获取所述目标日志对应的格式信息中的n个目标符号,其中,所述目标符号为所述目标字段对应的符号;获取每个目标字段对应的字段名,并将所述目标日志对应的格式信息中的每个目标符号替换为每个目标字段对应的字段名,得到替换后的格式信息;对所述替换后的格式信息中的每个目标字段对应的字段名添加标记信息,得到用于对所述目标日志进行解析处理的所述解析模板。

8、进一步地,对所述解析模板进行解析处理,得到每个目标字段的前缀信息和后缀信息包括:获取对每个目标字段对应的字段名添加的标记信息;依据对每个目标字段对应的字段名添加的标记信息,确定每个目标字段在所述解析模板中的位置信息;基于每个目标字段在所述解析模板中的位置信息,得到每个目标字段的前缀信息和后缀信息。

9、为了实现上述目的,根据本技术的另一方面,提供了一种日志的处理装置。该装置包括:第一获取模块,用于获取待解析的目标日志,其中,所述目标日志为网络设备在运行过程中产生的日志,所述目标日志中至少包括需要解析的n个目标字段,n为正整数;第一确定模块,用于确定所述目标日志对应的格式信息,并依据所述目标日志对应的格式信息,确定用于对所述目标日志进行解析处理的解析模板;第一处理模块,用于对所述解析模板进行解析处理,得到每个目标字段的前缀信息和后缀信息;第二处理模块,用于基于每个目标字段的前缀信息和后缀信息,对所述目标日志进行解析处理,得到对所述目标日志进行解析的解析结果。

10、进一步地,所述第二处理模块包括:第一匹配单元,用于通过字符串匹配算法,将每个目标字段的前缀信息与所述目标日志的内容信息进行匹配处理,得到每个目标字段对应的第一匹配结果;第二匹配单元,用于通过所述字符串匹配算法,将每个目标字段的后缀信息与所述目标日志的内容信息进行匹配处理,得到每个目标字段对应的第二匹配结果;第一确定单元,用于基于每个目标字段对应的第一匹配结果和每个目标字段对应的第二匹配结果,得到每个目标字段对应的内容信息;第二确定单元,用于依据每个目标字段对应的内容信息,得到对所述目标日志进行解析的所述解析结果。

11、进一步地,所述字符串匹配算法至少包括kmp算法;所述第一匹配单元包括:第一获取子模块,用于获取每个目标字段的前缀信息中的m个字符,其中,m为大于1的正整数;第二获取子模块,用于获取所述目标日志的内容信息中的s个字符,其中,s为大于m的正整数;第一匹配子模块,用于通过所述字符串匹配算法,将每个目标字段的前缀信息中的字符与所述s个字符中的前m个字符进行匹配处理,确定所述前m个字符中与每个目标字段的前缀信息中的字符匹配失败的目标字符;第一处理子模块,用于确定所述目标字符之后的m个字符,并将每个目标字段的前缀信息中的字符与所述目标字符之后的m个字符进行匹配处理,得到每个目标字段对应的所述第一匹配结果。

12、进一步地,所述第一确定模块包括:第一获取单元,用于获取所述目标日志对应的标识信息;第二获取单元,用于获取目标哈希表,其中,所述目标哈希表中至少包括:t种类型的日志文件中每种类型的日志文件对应的标识信息和格式信息,t为正整数;第三获取单元,用于依据所述目标日志对应的标识信息,从所述目标哈希表中获取所述目标日志对应的格式信息。

13、进一步地,所述装置还包括:第二获取模块,用于在确定所述目标日志对应的格式信息之前,获取t种类型的日志文件,其中,t为正整数;第二确定模块,用于确定每种类型的日志文件对应的标识信息;第三确定模块,用于确定每种类型的日志文件对应的格式信息;第一构建模块,用于基于每种类型的日志文件对应的标识信息和每种类型的日志文件对应的格式信息,构建目标哈希表。

14、进一步地,所述第一确定模块包括:第四获取单元,用于获取所述目标日志对应的格式信息中的n个目标符号,其中,所述目标符号为所述目标字段对应的符号;第一处理单元,用于获取每个目标字段对应的字段名,并将所述目标日志对应的格式信息中的每个目标符号替换为每个目标字段对应的字段名,得到替换后的格式信息;第一添加单元,用于对所述替换后的格式信息中的每个目标字段对应的字段名添加标记信息,得到用于对所述目标日志进行解析处理的所述解析模板。

15、进一步地,所述第一处理模块包括:第五获取单元,用于获取对每个目标字段对应的字段名添加的标记信息;第三确定单元,用于依据对每个目标字段对应的字段名添加的标记信息,确定每个目标字段在所述解析模板中的位置信息;第四确定单元,用于基于每个目标字段在所述解析模板中的位置信息,得到每个目标字段的前缀信息和后缀信息。

16、为了实现上述目的,根据本技术的另一方面,提供了一种计算机可读存储介质,所述存储介质存储程序,其中,所述程序执行上述的任意一项所述的日志的处理方法。

17、为了实现上述目的,根据本技术的另一方面,提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行上述的任意一项所述的日志的处理方法。

18、通过本技术,采用以下步骤:获取待解析的目标日志,其中,目标日志为网络设备在运行过程中产生的日志,目标日志中至少包括需要解析的n个目标字段,n为正整数;确定目标日志对应的格式信息,并依据目标日志对应的格式信息,确定用于对目标日志进行解析处理的解析模板;对解析模板进行解析处理,得到每个目标字段的前缀信息和后缀信息;基于每个目标字段的前缀信息和后缀信息,对目标日志进行解析处理,得到对目标日志进行解析的解析结果,由于日志中目标串的内容是动态的,这种基于解析模板中的目标字段的前缀信息和后缀信息采用反向匹配的方式进行日志解析,相比于采用正则匹配算法解析网络设备在运行过程中产生的日志中的日志内容,达到了提升日志的解析效果的目的。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1