CN114035789A - 日志解析模板的生成方法、日志解析方法、装置及设备 - Google Patents

日志解析模板的生成方法、日志解析方法、装置及设备 Download PDF

Info

Publication number
CN114035789A
CN114035789A CN202111306765.4A CN202111306765A CN114035789A CN 114035789 A CN114035789 A CN 114035789A CN 202111306765 A CN202111306765 A CN 202111306765A CN 114035789 A CN114035789 A CN 114035789A
Authority
CN
China
Prior art keywords
log
format
template
target
analysis
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202111306765.4A
Other languages
English (en)
Inventor
王振宇
吴瑕
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Topsec Technology Co Ltd
Beijing Topsec Network Security Technology Co Ltd
Beijing Topsec Software Co Ltd
Original Assignee
Beijing Topsec Technology Co Ltd
Beijing Topsec Network Security Technology Co Ltd
Beijing Topsec Software Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Topsec Technology Co Ltd, Beijing Topsec Network Security Technology Co Ltd, Beijing Topsec Software Co Ltd filed Critical Beijing Topsec Technology Co Ltd
Priority to CN202111306765.4A priority Critical patent/CN114035789A/zh
Publication of CN114035789A publication Critical patent/CN114035789A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/36Software reuse
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • G06F40/186Templates

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本公开涉及一种日志解析模板的生成方法、日志解析方法、装置及设备,该方法包括:获取待解析的目标日志;确定所述目标日志的格式和所述目标日志的一个或多个特征字段;基于所述一个或多个特征字段,确定初始解析模板;基于所述格式修正所述初始解析模板,得到日志解析模板。本公开通过确定目标日志的格式和目标日志的一个或多个特征字段,基于一个或多个特征字段,确定初始解析模板,用于完成对不同格式日志的解析工作,并基于目标日志的格式修正初始解析模板,使得初始解析模板更加完善,相同格式的日志能够更加快速的完成解析,减少日志解析人员的编写成本,提高了编写效率,降低了后期的运维成本。

Description

日志解析模板的生成方法、日志解析方法、装置及设备
技术领域
本公开涉及计算机技术领域,尤其涉及一种日志解析模板的生成方法、日志解析方法、装置及设备。
背景技术
随着大数据技术的不断成熟,大数据日志审计系统越来越流行。大数据日志审计系统可以实时地采集用户网络中各种不同厂商的网络设备、安全设备、主机、操作系统、以及各类应用系统产生的日志但对此类信息需要进行一定的转义编码,形成特定的数据格式以便用户可以在分析平台上对采集到的解析日志进行查询、统计、关联分析等处理使用。由于现在的系统相对复杂且体量巨大,一个系统所包含的设备种类较多,因此日志源信息的数据格式也就花样繁多。传统的做法是针对每一种类型的设备,编写一套相应的解析代码,将日志源信息转成展示层能使用的数据格式。
通常情况下,日志解析人员经常花费大量的精力编写该类日志源信息的解析并作调试,以便能将日志接入平台中做进一步的使用,但编写过的解析规则没有集中管理,对于同类的数据都需要重新编写该规则完成解析,无法复用。
发明内容
为了解决上述技术问题或者至少部分地解决上述技术问题,本公开提供了一种日志解析模板的生成方法、日志解析方法、装置及设备,以减少日志解析人员的编写成本,提高了编写效率。
第一方面,本公开实施例提供一种日志解析模板的生成方法,其特征在于,包括:
获取待解析的目标日志;
确定所述目标日志的格式和所述目标日志的一个或多个特征字段;
基于所述一个或多个特征字段,确定初始解析模板;
基于所述格式修正所述初始解析模板,得到日志解析模板。
第二方面,本公开实施例提供一种日志解析方法,其特征在于,包括:
获取待解析的目标日志;
确定所述目标日志的格式和所述目标日志的一个或多个特征值;
基于所述格式、所述一个或多个特征值和预先建立的关联关系,选择日志解析模板;其中,所述关联关系为日志解析模板、日志格式和至少一个特征值之间的关联关系;
基于所述日志解析模板对所述目标日志进行解析。
第三方面,本公开实施例提供一种日志解析模板的生成装置,其特征在于,包括:
获取单元,用于获取待解析的目标日志;
第一确定单元,用于确定所述目标日志的格式和所述目标日志的一个或多个特征字段;
第二确定单元,用于基于所述一个或多个特征字段,确定初始解析模板;
修正单元,用于基于所述格式修正所述初始解析模板,得到日志解析模板。
第四方面,本公开实施例提供一种日志解析装置,其特征在于,包括:
获取单元,用于获取待解析的目标日志;
第一确定单元,用于确定所述目标日志的格式和所述目标日志的一个或多个特征值;
选择单元,用于基于所述格式、所述一个或多个特征值和预先建立的关联关系,选择日志解析模板;其中,所述关联关系为日志解析模板、日志格式和至少一个特征值之间的关联关系;
解析单元,用于基于所述日志解析模板对所述目标日志进行解析。
第五方面,本公开实施例提供一种电子设备,包括:
存储器;
处理器;以及
计算机程序;
其中,所述计算机程序存储在所述存储器中,并被配置为由所述处理器执行以实现如第一方面和第二方面所述的方法。
本公开实施例提供的一种日志解析模板的生成方法、日志解析方法、装置及设备,通过确定目标日志的格式和目标日志的一个或多个特征字段,基于一个或多个特征字段,确定初始解析模板,用于完成对不同格式日志的解析工作,并基于目标日志的格式修正初始解析模板,使得初始解析模板更加完善,相同格式的日志能够更加快速的完成解析,减少日志解析人员的编写成本,提高了编写效率,降低了后期的运维成本。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本公开实施例提供的一种日志解析模板的生成方法流程示意图;
图2为本公开实施例提供的一种判断目标日志的格式的流程示意图;
图3为本公开实施例提供的一种确定初始解析模板的流程示意图;
图4为本公开实施例提供的一种修正初始解析模板的流程示意图;
图5为本公开实施例提供的一种日志解析方法的流程示意图;
图6为本公开实施例提供的一种日志解析模板生成的装置示意图;
图7为本公开实施例提供的日志解析的装置示意图;
图8为本公开实施例提供的电子设备的结构示意图。
具体实施方式
为了能够更清楚地理解本公开的上述目的、特征和优点,下面将对本公开的方案进行进一步描述。需要说明的是,在不冲突的情况下,本公开的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本公开,但本公开还可以采用其他不同于在此描述的方式来实施;显然,说明书中的实施例只是本公开的一部分实施例,而不是全部的实施例。
Logstash是一个开源的服务器端数据处理管道,可以同时从多个数据源获取数据,并对其进行转换,然后将其发送到预先设定的存储位置,存储位置例如为Es(Elasticsearch,分布式全文搜索引擎)或不同类型的数据库中。
数据从源端传输到存储位置的过程中,Logstash中的过滤器能够解析各个事件,事件来自不同厂商的安全设备、网络设备、主机、操作系统、数据库系统、用户业务系统的日志和警报等信息。Logstash中的过滤器解析事件后可以识别已命名的字段以构建结构,并将它们转换成通用格式,以便提高分析数据的效率。
Logstash能够动态地转换和解析数据,不受格式或复杂度的影响。具体步骤如下1)至4):
1)人工判断数据格式,并查阅相关过滤器语法,通过配置的方式将JSON(JavaScript Object Notation,JS对象简谱)、xml(Extensible Markup Language,可扩展标记语言)等类型数据派生出结构;
2)人工根据已提取出结构的数据找出IP类型字段的数据(例如“172.16.213.132”),并再次通过配置的方式获取其他地理位置信息;
3)对于时间类型字段需要转换为标准格式;
4)完成该类数据的解析。
但是,采用logstash的过滤器存在如下缺点:
1)当使用Logstash的过滤器编写数据解析时,需要在互联网查询相关文档,若要对json类型的数据做提取时,需要按照Logstash所提供的方式进行配置,如设置数据的字符集编码、读取的字段名等参数;
2)编写过的过滤器规则没有集中管理,对于同类的数据都需要重新编写该规则完成解析,无法复用;
3)人工成本高,需要不断的进行调试才能得出想要的日志结果。
因此,本公开至少一个实施例提供了一种日志解析模板的生成方法、日志解析方法、装置及设备,通过确定目标日志的格式和目标日志的一个或多个特征字段,基于一个或多个特征字段,确定初始解析模板,用于完成对不同格式日志的解析工作,并基于目标日志的格式修正初始解析模板,使得初始解析模板更加完善,相同格式的日志能够更加快速的完成解析,减少日志解析人员的编写成本,提高了编写效率,降低了后期的运维成本。
图1为本公开实施例提供的一种日志解析模板的生成方法流程示意图。如图1所示,该日志解析模板的生成方法包括但不限于如下步骤S101至S104:
S101、获取待解析的目标日志。
网络设备、系统及服务程序等,在运作时都会产生日志(log),日志用于记录事件;每一行日志都记载着日期、时间、使用者及动作等相关操作的描述。
网络操作系统都设计有各种各样的日志文件,如应用程序日志,安全日志、系统日志、Scheduler(调度)服务日志、FTP(File Transfer Protocol,文件传输协议)日志、WWW(World Wide Web,万维网)日志、DNS(Domain Name System,域名系统)服务器日志等等,这些根据系统开启的服务的不同而有所不同。在系统上进行操作时,日志文件通常会记录下操作的一些相关内容。
可选的,日志可以是结构化类数据,也可以是非结构化类数据。
S102、确定目标日志的格式和目标日志的一个或多个特征字段。
日志的格式有多种,例如包括关键值(Key-Value,kv)格式、json格式、syslog格式和长文本格式。当获取到待解析的目标日志时,可以确定该目标日志的格式和其包含的一个或多个特征字段。
例如:日志为:dev_type=“waf”time=“2021/08/01 33:12:11”ip=“194.2.3.2”,可以确定日志的格式为kv格式,其包含的特征字段有设备类型(device type或dev_type)、时间(time)、地址(Internet Protocol或ip)。
S103、基于一个或多个特征字段,确定初始解析模板。
在现有技术中,为了便于解析不同的特征字段的特征值,对每个特征字段设置有对应的字段解析模板,字段解析模板用于解析对应的特征字段的特征值,因此,在确定目标日志的一个或多个特征字段后,可以基于这些特征字段各自对应的字段解析模板,得到用于解析目标日志的初始解析模板。在一些实施例中,初始解析模板为一个或多个特征字段各自对应的字段解析模板合并得到的模板。
例如:日志为:dev_type=“waf”time=“2021/08/01 33:12:11”ip=“194.2.3.2”。该日志的特征字段为dev_type、time和ip,可以将dev_type、time和ip各自对应的字段解析模板合并为初始解析模板,当再次接收到的日志中包括特征字段:dev_type、time和ip,则可以使用该初始解析模板进行解析。
S104、基于格式修正初始解析模板,得到日志解析模板。
考虑到与日志相关的其他信息(例如地理位置信息、资产信息等)可以与日志解析结果一并提供给运维人员,而不同的日志格式获取日志相关的其他信息的方式可能不同,因此,需要基于日志格式修正初始解析模板,得到日志解析模板,日志解析模板不仅能够解析日志本身包含的信息,而且能够解析日志相关的信息。
可见,本公开实施例通过获取待解析的目标日志;确定目标日志的格式和目标日志的一个或多个特征字段;基于一个或多个特征字段,确定初始解析模板,从而完成对不同格式日志的解析工作,并基于该格式修正初始解析模板,使得初始解析模板更加完善,后续相同格式的日志可以直接使用日志解析模板进行解析,从而减少日志解析人员的代码工作量,提高了编写效率,降低了后期的运维成本。
图2为本公开实施例提供的一种判断目标日志的格式的流程示意图,如图2所示,确定目标日志的格式包括如下步骤S201至S203:
S201、基于Java(计算机编程语言)第三方类库判断目标日志的格式是否为关键值(Key-Value,kv)格式或JS对象简谱(JavaScript Object Notation,json)格式;若否,则执行步骤S202;
S202、基于RFC3164数据标准判断目标日志的格式是否为系统日志(syslog)格式;若否,则执行步骤S203;
S203、确定目标日志的格式为长文本格式。
常规的目标日志的格式种类包括:kv格式、json格式、syslog格式、长文本格式。判断目标日志的格式属于哪种格式,先用现有的java第三方类库判断是否为kv格式或json格式,若是则标记为kv格式或json格式结束步骤;若否,则用RFC3164数据标准判断是否为syslog格式,若是则标记为syslog格式结束步骤,若否,则标记为长文本格式。确定目标日志的格式种类能够快速的找到相对应的模板,基于其格式及其包含的特征完成解析,提高了解析效率。
图3为本公开实施例提供的一种确定初始解析模板的流程示意图,该流程可以应用于图1中的步骤103,如图3所示,基于一个或多个特征字段,确定初始解析模板包括如下步骤S301至S304:
S301、确定一个或多个特征字段预设的字段解析模板。
在现有技术中,为了便于解析不同的特征字段的特征值,对每个特征字段设置有对应的字段解析模板,字段解析模板用于解析对应的特征字段的特征值。
例如:日志为:dev_type=“waf”time=“2021/08/01 33:12:11”ip=“194.2.3.2”。该日志的特征字段为dev_type(设备类型)、time(时间)和ip(地址),其中,特征字段dev_type对应的字段解析模板可以解析该特征字段,得到的特征值为waf;特征字段time对应的字段解析模板可以解析该特征字段,得到的特征值为:2021/08/01 33:12:11;特征字段ip对应的字段解析模板可以解析该特征字段,得到的特征值为:194.2.3.2。
S302、选择至少一个字段解析模板解析对应的特征字段,得到至少一个特征值。
例如:日志为:dev_type=“waf”time=“2021/08/01 33:12:11”ip=“194.2.3.2”。该日志的特征字段为dev_type(设备类型)、time(时间)和ip(地址),选择特征字段dev_type对应的字段解析模板解析该特征字段,得到的特征值为waf。
S303、将未选择的各字段解析模板合并为初始解析模板。
例如:日志为:dev_type=“waf”time=“2021/08/01 33:12:11”ip=“194.2.3.2”。该日志的特征字段为dev_type(设备类型)、time(时间)和ip(地址),若选择特征字段dev_type,则未选择的特征字段为time和ip,因此,将特征字段time对应的字段解析模板和特征字段ip对应的字段解析模板合并为初始解析模板;同理,若选择特征字段dev_type和特征字段ip,则未选择的特征字段为time,因此,将特征字段time对应的字段解析模板作为初始解析模板。
S304、建立初始解析模板与至少一个特征值之间的关联关系。
例如:日志为:dev_type=“waf”time=“2021/08/01 33:12:11”ip=“194.2.3.2”。该日志的特征字段为dev_type(设备类型)、time(时间)和ip(地址)。
在一些实施例中,若选择特征字段dev_type对应的字段解析模板解析该特征字段,得到的特征值为waf,则未选择的特征字段为time和ip,因此,将特征字段time对应的字段解析模板和特征字段ip对应的字段解析模板合并为初始解析模板,进而建立该初始解析模板与特征字段dev_type的特征值waf之间的关联关系。
相应地,后续获取新的日志,若该日志包括特征字段dev_type且对应的特征值为waf,则可以基于已建立的waf与初始解析模板之间的关联关系,直接选择waf关联的初始解析模板,快速解析该日志,无需再次确定该日志的初始解析模板,提升解析效率。
在另一些实施例中,若选择特征字段dev_type对应的字段解析模板解析该特征字段,得到的特征值为waf,并且选择特征字段ip对应的字段解析模板解析该特征字段,得到的特征值为194.2.3.2,则未选择的特征字段为time,因此,将特征字段time对应的字段解析模板作为初始解析模板,进而建立该初始解析模板与特征值waf和特征值194.2.3.2之间的关联关系。
相应地,后续获取新的日志,若该日志包括特征字段dev_type和ip,且对应的特征值分别为waf和194.2.3.2,则可以基于已建立的waf、194.2.3.2与初始解析模板之间的关联关系,直接选择waf、194.2.3.2关联的初始解析模板,快速解析该日志,无需再次确定该日志的初始解析模板,提升解析效率。
可见,本实施例通过建立一个或多个特征值与初始解析模板的关联关系,以便后续获取新的日志后,直接基于一个或多个特征值选择关联的初始解析模板,快速解析该日志,无需再次确定该日志的初始解析模板,提升解析效率。
图4为本公开实施例提供的一种修正初始解析模板的流程示意图,如图4所示,基于格式修正初始解析模板,得到日志解析模板可以包括但不限于以下步骤S401和S402:
S401、基于格式为长文本格式,使用预先设置的一个或多个正则表达式,与目标日志进行正则匹配,得到匹配成功的一个或多个目标正则表达式。
其中,正则表达式(Regular Expression,用于描述一组字符串特征的模式,用来匹配特定的字符串。通过特殊字符+普通字符来进行模式描述,从而达到文本匹配目的工具)。
不同的正则表达式用于匹配不同的对象,对象例如包括但不限于:时间、主机、ip、MAC(Media Access Control,介质访问控制)地址和端口等,通过使用一个或多个正则表达式与目标日志进行正则匹配,可以得到匹配成功的一个或多个目标正则表达式。
S402、在初始解析模板中增加正则提取命令,得到日志解析模板。
其中,正则提取命令用于:基于一个或多个目标正则表达式,与目标日志进行正则匹配,将匹配成功的日志数据的字段名称标记为对应的目标正则表达式所标识的特征字段名称。
例如,当目标日志为长文本格式的日志时,先使用预先设置的一个或多个正则表达式与目标日志进行正则匹配(如进行时间、主机、ip、MAC、端口等正则匹配),得到匹配成功的一个或多个目标正则表达式;在初始解析模板中增加这些正则提取的命令,使得长文本格式日志与上述正则表达式进行正则匹配,并将匹配成功的日志数据的字段名称标记为对应的目标正则表达式所标识的特征字段名称,得到日志解析模板。
可见,本实施例中,对于格式为长文本格式的日志,通过在初始解析模板中增加正则提取命令得到日志解析模板,这样,后续获取新的长文本格式的日志后,使用日志解析模板解析该日志时,可以执行正则提取命令,实现与该日志的正则匹配,得到该日志更多的特征字段,提升解析效果。
在一些实施例中,图4所示的修正初始解析模板的流程还可以包括图4中未示出的步骤S403:
S403、基于格式为kv格式或json格式,在日志解析模板中增加地理位置信息和资产信息获取命令;其中,地理位置信息和资产信息获取命令被配置为在正则提取命令之后执行;且地理位置信息和资产信息获取命令被配置为:将一个或多个特征字段的名称与字符串‘ip’匹配,对匹配的特征字段的特征值进行ip格式正则校验,若校验通过,则基于该特征值获取对应的地理位置信息和资产信息。
本实施例通过对kv格式或json格式中特征字段ip进行正则检验后,补充地理位置信息和资产信息,便于后续分析使用该日志,提高了日志分析效率。
在一些实施例中,图4所示的修正初始解析模板的流程还可以包括图4中未示出的步骤S404:
S404、基于格式为syslog格式或长文本格式,在日志解析模板中增加地理位置信息和资产信息获取命令;其中,地理位置信息和资产信息获取命令被配置为在正则提取命令之后执行;且该地理位置信息和资产信息获取命令被配置为:基于特征字段为ip字段所对应的特征值获取对应的地理位置信息和资产信息。
本实施例通过对syslog格式或长文本格式中特征字段为ip时,补充地理位置信息和资产信息,便于后续分析使用该日志,提高了日志分析效率。
在一些实施例中,日志解析模板的生成方法还可以包括:基于初始解析模板与至少一个特征值之间的关联关系,建立日志解析模板、日志格式和至少一个特征值之间的关联关系。
例如,日志为:dev_type=“waf”time=“2021/08/01 33:12:11”ip=“194.2.3.2”时,日志解析模板、kv格式和特征值waf之间的关联关系是可以建立的,因为该日志有3个特征值,所以,特征值也可以是三个值中任意一个,也可以是两两组合,还可以是全部的三个值。
可见,本实施例通过建立日志解析模板、日志格式和至少一个特征值之间的关联关系,后续对相同日志格式且包括相同特征值的日志,可以根据该关联关系,直接选择日志解析模板,快速解析该日志,无需再次确定该日志的日志解析模板,提升解析效率。
图5为本公开实施例提供的一种日志解析方法的流程示意图。该方法可以包括但不限于以下步骤S501至S504:
S501、获取待解析的目标日志。
S501和上述的5101的实现原理和具体方法是一致的,此处不再赘述。
S502、确定目标日志的格式和目标日志的一个或多个特征值;
当获取到待解析的日志时,确定该日志的格式和其包含的一个或多个特征。例如:日志为:dev_type=“waf”time=“2021/08/01 33:12:11”ip=“194.2.3.2”,日志的格式为kv格式,其包含的特征值为waf、2021/08/01 33:12:11、194.2.3.2。
S503、基于格式、一个或多个特征值和预先建立的关联关系,选择日志解析模板;其中,关联关系为日志解析模板、日志格式和至少一个特征值之间的关联关系。
例如,日志格式、一个或多个特征值和预先建立的关联关系为:kv、waf与日志解析模板的关联关系。那么,若获取新的日志为:dev_type=“waf”time=“2021/08/01 33:12:11”ip=“194.2.3.2”,可以确定日志格式为kv,且dev_type的特征值为waf,那么基于前述的关联关系,可以直接确定该新的日志所使用的日志解析模板。
S504、基于日志解析模板对目标日志进行解析。
本公开实施例通过获取待解析的目标日志;确定目标日志的格式和目标日志的一个或多个特征值;基于格式、一个或多个特征值和预先建立的关联关系,选择日志解析模板;其中,关联关系为日志解析模板、日志格式和至少一个特征值之间的关联关系;基于日志解析模板对目标日志进行解析,完成了对目标日志的解析工作,无需再次确定该日志的日志解析模板,提升解析效率。
图6为本公开实施例提供的日志解析模板的生成装置示意图。该日志解析模板的生成装置可以执行日志解析模板的生成方法实施例提供的处理流程,如图6所示,日志解析模板的生成装置60包括:获取单元61、第一确定单元62、第二确定单元63和修正单元64;其中,获取单元61用于获取待解析的目标日志;第一确定单元62用于确定目标日志的格式和目标日志的一个或多个特征字段;第二确定单元63用于基于一个或多个特征字段,确定初始解析模板;修正单元64用于基于格式修正初始解析模板,得到日志解析模板。
可选的,第一确定单元62确定目标日志的格式包括:基于Java第三方类库判断目标日志的格式是否为kv格式或json格式;若否,则基于RFC3164数据标准判断目标日志的格式是否为syslog格式;若否,则确定目标日志的格式为长文本格式。
可选的,第二确定单元63用于:确定一个或多个特征字段预设的字段解析模板;选择至少一个字段解析模板解析对应的特征字段,得到至少一个特征值;将未选择的各字段解析模板合并为初始解析模板;建立初始解析模板与至少一个特征值之间的关联关系。
可选的,修正单元64用于:基于格式为长文本格式,使用预先设置的一个或多个正则表达式,与目标日志进行正则匹配,得到匹配成功的一个或多个目标正则表达式;在初始解析模板中增加正则提取命令,得到日志解析模板;其中,正则提取命令用于:基于一个或多个目标正则表达式,与目标日志进行正则匹配,将匹配成功的日志数据的字段名称标记为对应的目标正则表达式所标识的特征字段名称。
可选的,修正单元64还用于:基于格式为kv格式或json格式,在日志解析模板中增加地理位置信息和资产信息获取命令;其中,地理位置信息和资产信息获取命令被配置为在正则提取命令之后执行;且地理位置信息和资产信息获取命令被配置为:将一个或多个特征字段的名称与字符串“ip”匹配,对匹配的特征字段的特征值进行ip格式正则校验,若校验通过,则基于该特征值获取对应的地理位置信息和资产信息。
可选的,修正单元64还用于:基于格式为syslog格式或长文本格式,在日志解析模板中增加地理位置信息和资产信息获取命令;其中,地理位置信息和资产信息获取命令被配置为在正则提取命令之后执行;且地理位置信息和资产信息获取命令被配置为:基于特征字段为ip字段所对应的特征值获取对应的地理位置信息和资产信息。
可选的,日志解析模板的生成装置还包括图6中未示出的建立单元,用于基于初始解析模板与至少一个特征值之间的关联关系,建立日志解析模板、日志格式和至少一个特征值之间的关联关系。
图6所示实施例的日志解析模板的生成装置可用于执行上述日志解析模板的生成方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图7为本公开实施例提供的日志解析装置的示意图。该日志解析装置可以执行日志解析方法实施例提供的处理流程,如图7所示,日志解析装置70包括:获取单元71、第一确定单元72、选择单元73和解析单元74;其中,获取单元71,用于获取待解析的目标日志;第一确定单元72,用于确定目标日志的格式和目标日志的一个或多个特征值;选择单元73,用于基于格式、一个或多个特征值和预先建立的关联关系,选择日志解析模板;其中,关联关系为日志解析模板、日志格式和至少一个特征值之间的关联关系;解析单元74,用于基于日志解析模板对目标日志进行解析。
图7所示实施例的日志解析装置可用于执行上述日志解析方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图8为本公开实施例提供的一种电子设备的结构示意图。本公开实施例提供的可以执行日志解析模板的生成方法和日志解析的方法实施例提供的处理流程,如图8所示,电子设备80包括:存储器81、处理器82、通讯接口83;其中,计算机程序存储在存储器81中,并被配置为由处理器82执行如上的日志解析模板的生成方法和日志解析的方法。
此外,本公开实施例还提供了一种计算机程序产品,该计算机程序产品包括计算机程序或指令,该计算机程序或指令被处理器执行时实现如上的日志解析模板的生成方法和日志解析的方法。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅是本公开的具体实施方式,使本领域技术人员能够理解或实现本公开。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本公开的精神或范围的情况下,在其它实施例中实现。因此,本公开将不会被限制于本文所述的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (11)

1.一种日志解析模板的生成方法,其特征在于,包括:
获取待解析的目标日志;
确定所述目标日志的格式和所述目标日志的一个或多个特征字段;
基于所述一个或多个特征字段,确定初始解析模板;
基于所述格式修正所述初始解析模板,得到日志解析模板。
2.根据权利要求1所述的方法,其特征在于,所述确定所述目标日志的格式包括:
基于Java第三方类库判断所述目标日志的格式是否为kv格式或json格式;
若否,则基于RFC3164数据标准判断所述目标日志的格式是否为syslog格式;
若否,则确定所述目标日志的格式为长文本格式。
3.根据权利要求1所述的方法,其特征在于,所述基于所述一个或多个特征字段,确定初始解析模板包括:
确定所述一个或多个特征字段预设的字段解析模板;
选择至少一个字段解析模板解析对应的特征字段,得到至少一个特征值;
将未选择的各字段解析模板合并为初始解析模板;
建立所述初始解析模板与所述至少一个特征值之间的关联关系。
4.根据权利要求2所述的方法,其特征在于,基于所述格式修正所述初始解析模板,得到日志解析模板包括:
基于所述格式为长文本格式,使用预先设置的一个或多个正则表达式,与所述目标日志进行正则匹配,得到匹配成功的一个或多个目标正则表达式;
在所述初始解析模板中增加正则提取命令,得到日志解析模板;
其中,所述正则提取命令用于:基于所述一个或多个目标正则表达式,与所述目标日志进行正则匹配,将匹配成功的日志数据的字段名称标记为对应的目标正则表达式所标识的特征字段名称。
5.根据权利要求4所述的方法,其特征在于,所述基于所述格式修正所述初始解析模板,得到日志解析模板还包括:
基于所述格式为kv格式或json格式,在所述日志解析模板中增加地理位置信息和资产信息获取命令;
其中,所述地理位置信息和资产信息获取命令被配置为在所述正则提取命令之后执行;且所述地理位置信息和资产信息获取命令被配置为:将所述一个或多个特征字段的名称与字符串‘ip’匹配,对匹配的特征字段的特征值进行ip格式正则校验,若校验通过,则基于该特征值获取对应的地理位置信息和资产信息。
6.根据权利要求4所述的方法,其特征在于,所述基于所述格式修正所述初始解析模板,得到日志解析模板还包括:
基于所述格式为syslog格式或长文本格式,在所述日志解析模板中增加地理位置信息和资产信息获取命令;
其中,所述地理位置信息和资产信息获取命令被配置为在所述正则提取命令之后执行;且所述地理位置信息和资产信息获取命令被配置为:基于特征字段为ip字段所对应的特征值获取对应的地理位置信息和资产信息。
7.根据权利要求3所述的方法,其特征在于,所述方法还包括:
基于所述初始解析模板与所述至少一个特征值之间的关联关系,建立所述日志解析模板、日志格式和所述至少一个特征值之间的关联关系。
8.一种日志解析方法,其特征在于,包括:
获取待解析的目标日志;
确定所述目标日志的格式和所述目标日志的一个或多个特征值;
基于所述格式、所述一个或多个特征值和预先建立的关联关系,选择日志解析模板;其中,所述关联关系为日志解析模板、日志格式和至少一个特征值之间的关联关系;
基于所述日志解析模板对所述目标日志进行解析。
9.一种日志解析模板的生成装置,其特征在于,包括:
获取单元,用于获取待解析的目标日志;
第一确定单元,用于确定所述目标日志的格式和所述目标日志的一个或多个特征字段;
第二确定单元,用于基于所述一个或多个特征字段,确定初始解析模板;
修正单元,用于基于所述格式修正所述初始解析模板,得到日志解析模板。
10.一种日志解析装置,其特征在于,包括:
获取单元,用于获取待解析的目标日志;
第一确定单元,用于确定所述目标日志的格式和所述目标日志的一个或多个特征值;
选择单元,用于基于所述格式、所述一个或多个特征值和预先建立的关联关系,选择日志解析模板;其中,所述关联关系为日志解析模板、日志格式和至少一个特征值之间的关联关系;
解析单元,用于基于所述日志解析模板对所述目标日志进行解析。
11.一种电子设备,其特征在于,包括:
存储器;
处理器;以及
计算机程序;
其中,所述计算机程序存储在所述存储器中,并被配置为由所述处理器执行以实现如权利要求1至7中任一项所述的日志解析模板的生成方法或如权利要求8所述的日志解析方法。
CN202111306765.4A 2021-11-05 2021-11-05 日志解析模板的生成方法、日志解析方法、装置及设备 Pending CN114035789A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111306765.4A CN114035789A (zh) 2021-11-05 2021-11-05 日志解析模板的生成方法、日志解析方法、装置及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111306765.4A CN114035789A (zh) 2021-11-05 2021-11-05 日志解析模板的生成方法、日志解析方法、装置及设备

Publications (1)

Publication Number Publication Date
CN114035789A true CN114035789A (zh) 2022-02-11

Family

ID=80143017

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111306765.4A Pending CN114035789A (zh) 2021-11-05 2021-11-05 日志解析模板的生成方法、日志解析方法、装置及设备

Country Status (1)

Country Link
CN (1) CN114035789A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114723349A (zh) * 2022-06-09 2022-07-08 飞狐信息技术(天津)有限公司 一种日报发送方法、系统、电子设备及存储介质
CN115858884A (zh) * 2023-02-28 2023-03-28 天翼云科技有限公司 一种日志校验方法、装置和产品

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114723349A (zh) * 2022-06-09 2022-07-08 飞狐信息技术(天津)有限公司 一种日报发送方法、系统、电子设备及存储介质
CN114723349B (zh) * 2022-06-09 2022-09-20 飞狐信息技术(天津)有限公司 一种日报发送方法、系统、电子设备及存储介质
CN115858884A (zh) * 2023-02-28 2023-03-28 天翼云科技有限公司 一种日志校验方法、装置和产品

Similar Documents

Publication Publication Date Title
US10503478B2 (en) System and method for guiding a user in a software development lifecycle using machine learning
CN108563768B (zh) 不同数据模型的数据转换方法、装置、设备及存储介质
CN109902016B (zh) 一种Web的测试方法及测试平台
CN109684847B (zh) 脚本漏洞的自动修复方法、装置、设备及存储介质
CN114035789A (zh) 日志解析模板的生成方法、日志解析方法、装置及设备
US7913233B2 (en) Performance analyzer
DE102021133809A1 (de) Verfahren und vorrichtung zur automatischen detektion von softwarefehlern
US8682935B2 (en) System and method for application navigation
CN113076104A (zh) 页面生成方法、装置、设备及存储介质
US20230359934A1 (en) Intelligent Service Test Engine
US11977872B2 (en) Method and system for code maintenance
US20180276110A1 (en) System and method for assisting a user in an application development lifecycle
CN111190807A (zh) 一种埋点测试方法及设备
US20200310952A1 (en) Comparable user interface object identifications
CN106681904B (zh) 测试件覆盖率及覆盖应用接口的分析方法、装置
US9378115B2 (en) Base line for code analysis
CN113688134B (zh) 基于多维数据的可视化变量管理方法、系统及设备
CN111090665A (zh) 一种数据任务调度方法及调度系统
CN113051262B (zh) 一种数据质检方法、装置、设备及存储介质
CN116088846A (zh) 一种持续集成代码格式的处理方法、相关装置及设备
JP2010267266A (ja) 試験支援装置および試験支援方法
US11894976B1 (en) Automated predictive change analytics
KR20190020363A (ko) 동적 분석과 정적 분석을 연계한 프로그램을 분석하기 위한 방법 및 장치
CN105912573A (zh) 数据更新方法及装置
JP2013030017A (ja) テストプログラム生成方法、テストプログラム生成装置、及びテストプログラム生成プログラム

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination