CN114818643B - 一种保留特定业务信息的日志模板提取方法及装置 - Google Patents
一种保留特定业务信息的日志模板提取方法及装置 Download PDFInfo
- Publication number
- CN114818643B CN114818643B CN202210702569.7A CN202210702569A CN114818643B CN 114818643 B CN114818643 B CN 114818643B CN 202210702569 A CN202210702569 A CN 202210702569A CN 114818643 B CN114818643 B CN 114818643B
- Authority
- CN
- China
- Prior art keywords
- log
- field
- template
- sequence
- extraction
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
- G06F40/186—Templates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/1805—Append-only file systems, e.g. using logs or journals to store data
- G06F16/1815—Journaling file systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/194—Calculation of difference between files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
- G06F40/216—Parsing using statistical methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Probability & Statistics with Applications (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种保留特定业务信息的日志模板提取方法,包括:S1针对业务日志,设立实体对象的字段匹配规则;S2针对每一条日志,匹配其实体对象的字段,并统一使用特定的占位符替换;S3基于通用的格式树模板提取算法,对原始日志进行模板提取;S4对提取后的模板进行序列提取,并对模板提取算法中相似度较高的字段进行人工核验,以对预处理的匹配进行反馈;S5通过已匹配的实体对象字段,将属于同一对象的日志序列提取出来,构造控制流图。本发明通过预处理阶段的字段匹配规则,可以有效增加日志模板提取的准确性,并大幅增加模板的可读性,同时对特定字段的提取可以有效帮助日志序列的识别,减少序列模式识别的复杂度,提高算法运行效率。
Description
技术领域
本发明属于计算机技术领域,具体涉一种保留特定业务信息的日志模板提取方法、装置、设备和存储介质。
背景技术
在业务监控日志中,通过特定日志类型的出现或数量变化可以帮助运维人员判断业务是否正常运行。通常情况下,需要对不同类型的日志进行关键字的监控或模板提取来对大量不同类型的日志进行区分。在实际的环境中,由于大型企业线上系统的业务数量多、交易量大,在短时间内有大量并发的业务,其产生的日志数量巨大且混杂。另一方面,由于不同的业务、应用系统的实现上存在区别,其产生的日志格式较为复杂,难以通过统一的方式进行处理。上述原因使得人工判别或自动化识别日志模板都具有相当的挑战。本发明主要解决在海量日志中,对无特定格式的日志进行快速模板提取,并基于提取后的日志模板,对业务流程的日志序列进行构造,通过多条日志构建完整的业务执行流程,以提高通过日志模板对业务异常判断的准确性。
现有技术中,针对常见的日志类型,日志模板提取主要通过空格等分隔符,对日志文本进行分词,并按照分词后的每一部分,将日志的单词分为文字、时间、数字等格式。在分词的基础上,模板提取算法将逐一对比不同的日志文本,并根据日志文本的相似度,对不同的日志进行聚类,最终生成若干模板。
模板提取的结果受到算法中文本相似度等参数的影响,通过这些参数会影响最终模板数量。现有的使用较为频繁的日志模板提取方法,通常会构造日志的格式树结构,将训练数据中的日志按照分词后的结果,形成多层的树型结构,在由叶子结点向根结点的方向上,将会对相似的模板进行合并。通过控制层数,可以对输出的模板数量进行调整。
在提取后的日志模板序列中,可以构造出完整的业务流程。目前通常使用最小近邻算法对日志模板序列进行提取,并构造控制流图。通过该方法,将对日志序列中经常出现的子串模式进行识别,以此发现特点的业务日志序列。
现有日志模板提取方法,主要通过简单的分词方式对日志文本进行预处理,针对原始的日志文本,对特定格式的内容如时间戳、数字、IP地址等进行替换,对剩余部分的文本则按照普通的单词进行处理。在实际使用中,日志中存在许多特定的字段例如主机编号等,而由于模板数量的限制,会导致上述大量相似的字段被归并,在最终显示的模板中被通配符替换,使得最终的模板可读性和可解释性较差。
另一方面,由于上述方法中对特定字段的处理不够,使得在日志模板序列的提取过程中,无法快速地区分不同业务实例的日志序列。在实际的序列提取中,需要通过算法过滤其他日志的噪声。而在实际的环境中,由于大量同种业务高并发的情况下,对日志噪声的过滤效果在实际中得不到保证,无法有效地构造精准的控制流图。
发明内容
本发明提供一种保留特定业务信息的日志模板提取方法、装置、设备和存储介质,实现有效增加日志模板提取的准确性,并大幅增加模板的可读性,帮助日志序列的识别,减少序列模式识别的复杂度,提高算法运行效率的效果。
第一方面,
本发明实施例提供了一种保留特定业务信息的日志模板提取方法,该方法输入数据为按照时间顺序排列的原始日志文本序列,通过本发明中所诉方法,进行模板提取并基于模板提取结果对模板序列进行模式识别,最终输出结果为业务事件对应的日志控制流图,所述方法包括一种保留特定业务信息的日志模板提取方法,其特征在于,包括:
S1构造特定字段规则,针对业务日志,设立实体对象的字段匹配规则,得到特定字段匹配格式;
S2日志预处理,接收原始日志文本序列与所述特定字段匹配格式,针对所述原始日志文本中每一条日志文本,基于所述特定字段匹配格式匹配其实体对象的字段,并统一使用特定的占位符进行替换,得到结构化的日志序列;
S3 提取日志模板,接收所述结构化的日志序列,基于格式树模板提取算法,对所述结构化的日志序列进行模板提取,得到日志模板序列,以及高相似度字段,所述日志模板序列包括每条日志对应的模板号与提取到的特定字段组合;
S4日志序列提取,接收所述日志模板序列,通过已匹配的实体对象字段,按照实体对象字段在原始日志文本中的原始取值,将属于同一对象的日志序列提取出来,构造得到控制流图。
可选地,还包括S5 高相似度字段识别,对所述高相似度字段的文本特征执行特定字段识别与特定字段规则构造,得到新的特定字段匹配格式,并反馈至S2日志预处理步骤。
可选地,所述S4日志序列提取步骤包括:
S41按照所有字段的取值组合,对所述日志模板序列进行分类;
S42针对每一种取值组合,选取与原始日志文本取值一致的日志模板序列内容;
S43在当前分类的日志模板序列中,使用算法抽取业务事件序列;
S44对抽取结果进行人工核验,或算法训练验证,若抽取结果满足分类准确性要求,则保留所述业务事件序列;若不满足,则按照字段优先级顺序,排除最末尾字段的分类限制条件,转步骤S42执行;
S45 基于所述业务事件序列的有向图结构,得到所述控制流图。
可选地,所述字段优先级顺序是通过模板提取中的词频逆文档频率确定的。
可选地,所述S1构造特定字段规则的步骤包括,通过字符串的结构特征、语义特征和统计特征表示字段特征,通过随机森林方式进行建模,模型输入为原始的字段,输出为判断为是否为特殊实体对象字段的概率,所述结构特征包括字母长度,所述语义特征包括字符集基数、数字比例、元/辅音比例,所述统计特征包括香农墒、N-Gram向量。
第二方面,
一种保留特定业务信息的日志模板提取装置,所述装置包括:特定字段规则构造模块,日志预处理模块,日志模板提取模块,以及日志序列提取模块,其中:
特定字段规则构造模块,用于针对业务日志,设立实体对象的字段匹配规则;
日志预处理模块 ,接收原始日志文本序列与所述特定字段匹配格式,用于针对每一条日志,匹配其实体对象的字段,并统一使用特定的占位符替换, 得到结构化的日志序列;
日志模板提取模块,接收所述结构化的日志序列,用于基于通用的格式树模板提取算法,对原始日志进行模板提取, 得到日志模板序列,以及高相似度字段,所述日志模板序列包括每条日志对应的模板号与提取到的特定字段组合;
日志序列提取模块,接收所述日志模板序列,用于通过已匹配的实体对象字段,将属于同一对象的日志序列提取出来,构造得到控制流图。
可选地,还包括高相似度字段识别模块,接收日志目标提取模块发送的所述高相似度字段,对所述高相似度字段的文本特征执行特定字段识别与特定字段规则构造,得到新的特定字段匹配格式,并反馈至日志预处理模块。
可选地,所述日志序列提取模块执行如下操作:按照模板提取与字段匹配结果,生成模板序列;按照所有字段的取值组合,对所述日志模板序列进行分类;针对每一种取值组合,选取与原始日志文本取值一致的日志模板序列内容;在当前分类的日志模板序列中,使用算法抽取业务事件序列;对抽取结果进行人工核验,或算法训练及验证,若抽取结果满足分类准确性要求,则保留所述业务事件序列;若不满足,则按照字段优先级顺序,排除最末尾字段的分类限制条件,继续选取符合条件的日志模板序列内容;基于所述业务事件序列的有向图结构,得到所述控制流图。
可选地,所述字段优先级顺序是通过模板提取中的词频逆文档频率确定的。
可选地,所述特定字段规则构造模块执行如下操作:通过字符串的结构特征、语义特征和统计特征表示字段特征,并通过随机森林方式进行建模,模型输入为原始的字段,输出为判断为是否为特殊实体对象字段的概率,所述结构特征包括字母长度,所述语义特征包括字符集基数、数字比例、元/辅音比例,所述统计特征包括香农墒、N-Gram向量。
第三方面,
本发明实施例还提供了一种计算机设备,所述计算机设备包括:一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明任意实施例所提供的保留特定业务信息的日志模板提取方法。
第四方面,本发明实施例还提供了一种计算机存储介质,其上存储有计算机程序,当所述计算机程序被计算设备中的处理器执行时,计算设备执行本发明任意实施例所提供的保留特定业务信息的日志模板提取方法。
本发明通过对日志中特定字段构建特定的字段匹配规则,保留了带有特定信息的字段,将其运用于后续模板序列的提取当中,从而在海量日志中,对无特定格式的日志进行快速模板提取,并基于提取后的日志模板,对业务流程的日志序列进行构造,通过多条日志构建完整的业务执行流程,使得最终的模板获得较高的可读性和可解释性,提高了通过日志模板对业务异常判断的准确性,从而得以有效地构造精准的控制流图。
附图说明
为了更清楚地说明发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例一提供的一种保留特定业务信息的日志模板提取方法的流程图。
具体实施方式
为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行进一步的详细描述。需要说明的是,在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述的方式来实施,因此,本发明的保护范围并不受下面公开的具体实施例的限制。
实施例一
本实施例提供了一种保留特定业务信息的日志模板提取方法,流程如图1所示。
该方法包括如下操作:
构造特定字段规则,针对业务日志,设立实体对象的字段匹配规则。
在实际的业务日志中,存在大量高度相似的字段例如业务ID号、主机编号等。这些字段由于数量众多,因此在全量日志中,每一个特定的字段出现比例很低,而由于该类型的字段相似度也较高,在传统的模板提取中难以被识别为模板的特定字段,因此在最终的输出结果中无法被专门识别,通过该方法提取的模板,忽略了日志中原本包含的实体信息,对后续的日志序列提取也造成了不利影响,因此需要针对这样的特定字段设立匹配规则。
具体来说,特定字段为包含可作为业务流程、实体对象的识别编码的字段,即业务逻辑或拓扑关系中的实体对象字段,不包含业务流程中的具体业务变量。例如,以企业服务总线(ESB)日志为例,可能存在如下的日志:“2021-08-01 12:00:00 Thread-37: run athost mSrv1001”,通过设立特定的字段规则,对Thread-37和mSrv1001类型的字段进行识别,将Thread-37关联到Thread-id,将mSrv1001关联到Server-id。
可选地,针对结构简单和格式明确的字段,通过设立正则表达式进行匹配。在算法运行初期,基于运维人员利用专家领域知识,结合日志的基本格式设立已知的字段匹配规则。日志格式复杂或缺乏领域知识的情况下,字段特征可以通过字符串的结构特征(字母长度等)、语义特征(字符集基数、数字比例、元/辅音比例等)和统计特征(香农墒、N-Gram向量等)进行表示,并通过随机森林方式进行建模。模型输入为原始的字段,输出为判断为是否为特殊实体对象字段的概率。在模型输出后,通过人工反馈进行校验,对于被确认的实体对象字段,可以构造正则表达式进行匹配。
日志预处理,针对每一条日志,匹配其实体对象的字段,并统一使用特定的占位符替换。
具体地,预处理过程将对日志进行简单的分词,并根据分词后各个单词的类型进行识别,对特定种类的单词/字段进行替换,例如常见的日期格式、时间戳、数字等。在处理完毕后,剩余的日志部分则会进行后续的模板提取。在剩余的日志字段中,出现频率较高的字段会被模板提取算法识别,而出现频率较低、或者有大量相似的字段则会被算法忽略,在最终生成的模板中以通配符的形式存在。例如,日志“2021-08-01 12:00:00 Thread-37:run at host mSrv1001”的最终日志预处理结果为“ <timestamp> <thread-id>: run athost <server-id>”。
提取日志模板,基于通用的格式树模板提取算法,对原始日志进行模板提取。
在日志模板提取算法运行中,将对算法运行中产生的相似度较高、变量类型较多的字段进行分析,采用自动化方法提取疑似包含特定业务信息(如主机编号、业务流水号等)的字段及其匹配模式,供运维人员查验并进行反馈。对新发现的字段,通过将其对应的匹配规则补充至预处理流程中,以提高后续的模板提取的效率和准确性。
利用通过预处理后的日志字段,构造格式树,并通过控制相似度阈值,对相似的日志进行归并、聚合,最终生成不同层级的模板结果。在该算法当中,针对不同的日志,将使用文本的相似度来判断不同日志是否被合并至同一模板。对每次合并的字段进行统计,在日志进行合并时,记录其被合并到同一模板、同一字段位置的不同类型原文的数量。在最终生成的模板中,每一条模板的每一个字段位置,均维护其原始日志中对应的不重复字段的个数。该数量统计用于筛选是否可能存在包含特定信息的字段需要在预处理过程中进行匹配。对该数值,将参考在同一模板训练周期内的统计值,使用极大似然法计算其高斯分布参数,并计算动态阈值。高于阈值的字段进行输出,并通过状态机方法自动生成其对应的正则表达式,供运维人员查看及预处理使用。
高相似度字段识别,对模板提取算法中相似度较高的字段进行文本特征的识别并通过人工进行核验,以对预处理的匹配进行反馈。
例如,原始文本中如果包含大量的Weblogic中间件日志,包含了大量形如mSrv1001、mSrv1002的字段,这些字段的位置相同、文本结构相似,会被算法发现。同时,通过有限状态自动机可以得到其格式为“mSrv[0-9]+”,通过该方式,运维人员可以确认在日志模板中,是否存在诸如实体对象ID、主机ID等特定类型的字段被合并,并将结果反馈至预处理阶段,增添新的字段匹配规则。
日志序列提取,对模板提取后的模板序列进行业务事件的日志序列提取,通过已匹配的实体对象字段,将属于同一对象的日志序列提取出来,构造控制流图。
具体地,日志序列提取过程如下:
1)按照模板提取与字段匹配结果,生成模板序列;
2)按照所有字段的取值组合,对原始的全量模板序列进行分类;
3)针对每一种取值组合,选取符合条件(即原始日志文本取值一致)的模板序列内容;
4)在当前分类的模板序列中,使用算法抽取业务事件序列;
5)对抽取结果进行人工核验,或算法训练验证,若抽取结果满足分类准确性要求,则保留所述业务事件序列;若不满足,则按照字段优先级顺序,排除最末尾字段的分类限制条件,转步骤(3)执行;
6)基于所述业务事件序列的有向图结构,得到所述控制流图。
针对同一类型的对象所产生的日志,可以按照各个字段的取值,对全量日志进行分类处理。例如,存在A、B两个字段,在两个字段都被使用时,A1-B1-Tz的日志和A1-B2-Tz的日志将不会共同进行提取。在上述序列提取中,如果无法提取到有效的序列模式,则将按照新增字段的优先级顺序,对各个字段进行忽略,再分别进行日志模板序列的提取。不同字段的优先级顺序通过模板提取中的词频逆文档频率确定其权重。例如,A字段优先级高于B字段,则首先会尝试忽略B字段。在该条件下,形如A1-B1-Tz、A1-B2-Tz的模板作为同一类数据,即仅区分A字段和原始模板T,此时模板简化为Ax-Tz。
同一类型的日志转化为按照时间顺序的模板序列,通过最小近邻算法,对出现重复次数较高的子串模式进行发现,在此基础上,通过有限状态自动机方法构造日志序列的流程图,基于事件模板的顺序和分支概率,输出结果为事件模板的树型结构,包含事件每一步骤的模板的转移路径,最终形成特定业务逻辑下的日志模板流程图。该流程图可以用于对业务事件的运行情况判断,并根据每一步骤的执行结果、步骤之间的耗时等判断业务是否存在异常。
实施例二
本实施例提供一种保留特定业务信息的日志模板提取装置,所述装置包括:特定字段规则构造模块,日志预处理模块,日志模板提取模块,高相似度字段识别模块,以及日志序列提取模块,其中:
特定字段规则构造模块,用于针对业务日志,设立实体对象的字段匹配规则。
具体来说,特定字段为包含可作为业务流程、实体对象的识别编码的字段,即业务逻辑或拓扑关系中的实体对象字段,不包含业务流程中的具体业务变量。
可选地,针对结构简单和格式明确的字段,通过设立正则表达式进行匹配。在算法运行初期,基于运维人员利用专家领域知识,结合日志的基本格式设立已知的字段匹配规则。日志格式复杂或缺乏领域知识的情况下,字段特征可以通过字符串的结构特征(字母长度等)、语义特征(字符集基数、数字比例、元/辅音比例等)和统计特征(香农墒、N-Gram向量等)进行表示,并通过随机森林方式进行建模。模型输入为原始的字段,输出为判断为是否为特殊实体对象字段的概率。在模型输出后,通过人工反馈进行校验,对于被确认的实体对象字段,可以构造正则表达式进行匹配。
日志预处理模块 ,用于针对每一条日志,匹配其实体对象的字段,并统一使用特定的占位符替换。
具体地,日志预处理模块将对日志进行简单的分词,并根据分词后各个单词的类型进行识别,对特定种类的单词/字段进行替换,例如常见的日期格式、时间戳、数字等。在处理完毕后,剩余的日志部分则会进行后续的模板提取。在剩余的日志字段中,出现频率较高的字段会被模板提取算法识别,而出现频率较低、或者有大量相似的字段则会被算法忽略,在最终生成的模板中以通配符的形式存在。
日志模板提取模块,用于基于通用的格式树模板提取算法,对原始日志进行模板提取。
具体地,日志模板提取模块对算法运行中产生的相似度较高、变量类型较多的字段进行分析,采用自动化方法提取疑似包含特定业务信息(如主机编号、业务流水号等)的字段及其匹配模式,供运维人员查验并进行反馈。对新发现的字段,通过将其对应的匹配规则补充至预处理流程中,以提高后续的模板提取的效率和准确性。
利用通过预处理后的日志字段,构造格式树,并通过控制相似度阈值,对相似的日志进行归并、聚合,最终生成不同层级的模板结果。在该算法当中,针对不同的日志,将使用文本的相似度来判断不同日志是否被合并至同一模板。对每次合并的字段进行统计,在日志进行合并时,记录其被合并到同一模板、同一字段位置的不同类型原文的数量。在最终生成的模板中,每一条模板的每一个字段位置,均维护其原始日志中对应的不重复字段的个数。该数量统计用于筛选是否可能存在包含特定信息的字段需要在预处理过程中进行匹配。对该数值,将参考在同一模板训练周期内的统计值,使用极大似然法计算其高斯分布参数,并计算动态阈值。高于阈值的字段进行输出,并通过状态机方法自动生成其对应的正则表达式。
高相似度字段识别模块,用于对模板提取算法中相似度较高的字段进行文本特征的识别并通过人工进行核验,以对预处理的匹配进行反馈。
例如,原始文本中如果包含大量的Weblogic中间件日志,包含了大量形如mSrv1001、mSrv1002的字段,这些字段的位置相同、文本结构相似,会被算法发现。同时,通过有限状态自动机可以得到其格式为“mSrv[0-9]+”,通过该方式,运维人员可以确认在日志模板中,是否存在诸如实体对象ID、主机ID等特定类型的字段被合并,并将结果反馈至预处理阶段,增添新的字段匹配规则。
日志序列提取模块,用于通过已匹配的实体对象字段,将属于同一对象的日志序列提取出来,构造控制流图。
具体地,日志序列提取模块提取日志序列的过程如下:
1)按照模板提取与字段匹配结果,生成模板序列;
2)按照所有字段的取值组合,对原始的全量模板序列进行分类;
3)针对每一种取值组合,选取符合条件(即原始日志文本取值一致)的模板序列内容;
4)在当前分类的模板序列中,使用算法抽取业务事件序列;
5)对抽取结果进行人工核验,或算法训练验证,若抽取结果满足分类准确性要求,则保留所述业务事件序列;若不满足,则按照字段优先级顺序,排除最末尾字段的分类限制条件,转步骤(3)执行;
6)基于所述业务事件序列的有向图结构,得到所述控制流图。
具体地,针对同一类型的对象所产生的日志,可以按照各个字段的取值,对全量日志进行分类处理。在序列提取中,如果无法提取到有效的序列模式,则将按照新增字段的优先级顺序,对各个字段进行忽略,再分别进行日志模板序列的提取。不同字段的优先级顺序通过模板提取中的词频逆文档频率确定其权重。
同一类型的日志转化为按照时间顺序的模板序列,通过最小近邻算法,对出现重复次数较高的子串模式进行发现,在此基础上,通过有限状态自动机方法构造日志序列的流程图,最终形成特定业务逻辑下的日志模板流程图。
实施例三
本实施例提供一种计算机设备,其特征在于,所述设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现实施例一所述的方法。
实施例四
本实施例提供一种计算机可读存储介质,其存储有计算机程序;当所述计算机程序被计算设备中的处理器执行时,使得计算设备执行实施例一所述的方法。
实施例一至四通过预处理阶段的字段匹配规则,可以有效增加日志模板提取的准确性,并大幅增加模板的可读性。同时对特定字段的提取可以有效帮助日志序列的识别,减少序列模式识别的复杂度,提高算法运行效率。
为了说明的目的,前述描述使用具体命名以提供对所述实施方案的透彻理解。然而,对于本领域的技术人员而言将显而易见的是,不需要具体细节即可实践所述实施方案。因此,出于例示和描述的目的,呈现了对本文所述的具体实施方案的前述描述。这些描述并非旨在是穷举性的或将实施方案限制到所公开的精确形式。对于本领域的普通技术人员而言将显而易见的是,鉴于上面的教导内容,许多修改和变型是可行的。另外,当在本文中用于指部件的位置时,上文和下文的术语或它们的同义词不一定指相对于外部参照的绝对位置,而是指部件的参考附图的相对位置。
此外,前述附图和描述包括许多概念和特征,其可以多种方式组合以实现多种有益效果和优点。因此,可组合来自各种不同附图的特征,部件,元件和/或概念,以产生未必在本说明书中示出或描述的实施方案或实施方式。此外,在任何特定实施方案和/或实施方式中,不一定需要具体附图或说明中所示的所有特征,部件,元件和/或概念。应当理解,此类实施方案和/或实施方式落入本说明书的范围。
Claims (8)
1.一种保留特定业务信息的日志模板提取方法,其特征在于,包括:
S1构造特定字段规则,针对业务日志,设立实体对象的字段匹配规则,得到特定字段匹配格式;
S2日志预处理,接收原始日志文本序列与所述特定字段匹配格式,针对所述原始日志文本中每一条日志文本,基于所述特定字段匹配格式匹配其实体对象的字段,并统一使用特定的占位符进行替换,得到结构化的日志序列;
S3 提取日志模板,接收所述结构化的日志序列,基于格式树模板提取算法,对所述结构化的日志序列进行模板提取,得到日志模板序列,以及高相似度字段,所述日志模板序列包括每条日志对应的模板号与提取到的特定字段组合;
S4日志序列提取,接收所述日志模板序列,通过已匹配的实体对象字段,按照实体对象字段在原始日志文本中的原始取值,将属于同一对象的日志序列提取出来,构造得到控制流图;
所述S1包括,通过字符串的结构特征、语义特征和统计特征表示字段特征,通过随机森林方式进行建模,模型输入为原始的字段,输出为判断为是否为特殊实体对象字段的概率,所述结构特征包括字母长度,所述语义特征包括字符集基数、数字比例、元/辅音比例,所述统计特征包括香农墒、N-Gram向量;
S41按照所有字段的取值组合,对所述日志模板序列进行分类;
S42针对每一种取值组合,选取与原始日志文本取值一致的日志模板序列内容;
S43在当前分类的日志模板序列中,使用算法抽取业务事件序列;
S44对抽取结果进行人工核验,或算法训练验证,若抽取结果满足分类准确性要求,则保留所述业务事件序列;若不满足,则按照字段优先级顺序,排除最末尾字段的分类限制条件,转步骤S42执行;
S45 基于所述业务事件序列的有向图结构,得到所述控制流图。
2.如权利要求1所述的方法,其特征在于,还包括:
S5 高相似度字段识别,对所述高相似度字段的文本特征执行特定字段识别与特定字段规则构造,得到新的特定字段匹配格式,并反馈至S2。
3.如权利要求1所述的方法,其特征在于,所述字段优先级顺序是通过模板提取中的词频逆文档频率确定的。
4.一种保留特定业务信息的日志模板提取装置,所述装置包括:特定字段规则构造模块,日志预处理模块,日志模板提取模块,以及日志序列提取模块,其中:
特定字段规则构造模块,用于针对业务日志,设立实体对象的字段匹配规则;
日志预处理模块 ,接收原始日志文本序列与所述特定字段匹配格式,用于针对每一条日志,匹配其实体对象的字段,并统一使用特定的占位符替换, 得到结构化的日志序列;
日志模板提取模块,接收所述结构化的日志序列,用于基于通用的格式树模板提取算法,对原始日志进行模板提取, 得到日志模板序列,以及高相似度字段,所述日志模板序列包括每条日志对应的模板号与提取到的特定字段组合;
日志序列提取模块,接收所述日志模板序列,用于通过已匹配的实体对象字段,将属于同一对象的日志序列提取出来,构造得到控制流图;
所述日志序列提取模块执行如下操作:
按照模板提取与字段匹配结果,生成模板序列;
按照所有字段的取值组合,对所述日志模板序列进行分类;
针对每一种取值组合,选取与原始日志文本取值一致的日志模板序列内容;
在当前分类的日志模板序列中,使用算法抽取业务事件序列;
对抽取结果进行人工核验,或算法训练及验证,若抽取结果满足分类准确性要求,则保留所述业务事件序列;
若不满足,则按照字段优先级顺序,排除最末尾字段的分类限制条件,继续选取符合条件的日志模板序列内容;
基于所述业务事件序列的有向图结构,得到所述控制流图;
所述特定字段规则构造模块执行如下操作:
通过字符串的结构特征、语义特征和统计特征表示字段特征,通过随机森林方式进行建模,模型输入为原始的字段,输出为判断为是否为特殊实体对象字段的概率,所述结构特征包括字母长度,所述语义特征包括字符集基数、数字比例、元/辅音比例,所述统计特征包括香农墒、N-Gram向量。
5.如权利要求4所述的装置,其特征在于,还包括:
高相似度字段识别模块,接收日志目标提取模块发送的所述高相似度字段,对所述高相似度字段的文本特征执行特定字段识别与特定字段规则构造,得到新的特定字段匹配格式,并反馈至日志预处理模块。
6.如权利要求4所述的装置,其特征在于,所述字段优先级顺序是通过模板提取中的词频逆文档频率确定的。
7.一种计算机设备,其特征在于,所述设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-3任一所述的方法。
8.一种计算机存储介质,其上存储有计算机程序,其特征在于,
当所述计算机程序被计算设备中的处理器执行时,计算设备执行如权利要求1-3任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210702569.7A CN114818643B (zh) | 2022-06-21 | 2022-06-21 | 一种保留特定业务信息的日志模板提取方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210702569.7A CN114818643B (zh) | 2022-06-21 | 2022-06-21 | 一种保留特定业务信息的日志模板提取方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114818643A CN114818643A (zh) | 2022-07-29 |
CN114818643B true CN114818643B (zh) | 2022-10-04 |
Family
ID=82520323
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210702569.7A Active CN114818643B (zh) | 2022-06-21 | 2022-06-21 | 一种保留特定业务信息的日志模板提取方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114818643B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115017268B (zh) * | 2022-08-04 | 2022-10-11 | 北京航空航天大学 | 一种基于树结构的启发式日志抽取方法及系统 |
CN115544975B (zh) * | 2022-12-05 | 2023-03-10 | 济南丽阳神州智能科技有限公司 | 一种日志格式转换方法及设备 |
CN115794563B (zh) * | 2023-02-06 | 2023-04-11 | 北京升鑫网络科技有限公司 | 一种系统审计日记的降噪方法、装置、设备及可读介质 |
CN117724925B (zh) * | 2023-11-14 | 2024-08-02 | 深圳市溪数科技有限公司 | 基于分布式的日志数据模式识别方法、系统和电子装置 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101572957B (zh) * | 2009-05-08 | 2011-05-11 | 深圳市宏电技术股份有限公司 | 基于wmmp的无线终端日志获取方法及系统 |
CN101950293B (zh) * | 2010-08-11 | 2012-11-21 | 东软集团股份有限公司 | 日志萃取方法及装置 |
CN103399883B (zh) * | 2013-07-19 | 2017-02-08 | 百度在线网络技术(北京)有限公司 | 根据用户兴趣点/关注点进行个性化推荐的方法和系统 |
CN110569298B (zh) * | 2019-09-12 | 2023-03-24 | 成都中科大旗软件股份有限公司 | 一种数据对接、可视化方法和系统 |
CN111708860A (zh) * | 2020-06-15 | 2020-09-25 | 北京优特捷信息技术有限公司 | 信息提取方法、装置、设备及存储介质 |
CN111881094B (zh) * | 2020-07-28 | 2023-07-18 | 平安科技(深圳)有限公司 | 日志中关键信息提取方法、装置、终端及存储介质 |
-
2022
- 2022-06-21 CN CN202210702569.7A patent/CN114818643B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN114818643A (zh) | 2022-07-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114818643B (zh) | 一种保留特定业务信息的日志模板提取方法及装置 | |
CN114610515B (zh) | 基于日志全语义的多特征日志异常检测方法及系统 | |
CN112070138B (zh) | 多标签混合分类模型的构建方法、新闻分类方法及系统 | |
Kobayashi et al. | Towards an NLP-based log template generation algorithm for system log analysis | |
CN111581092B (zh) | 仿真测试数据的生成方法、计算机设备及存储介质 | |
CN113590451B (zh) | 一种根因定位方法、运维服务器及存储介质 | |
CN112445912B (zh) | 一种故障日志分类方法、系统、设备以及介质 | |
CN110659175A (zh) | 日志的主干提取方法、分类方法、设备及存储介质 | |
US10467276B2 (en) | Systems and methods for merging electronic data collections | |
CN115859191A (zh) | 故障诊断方法、装置、计算机可读存储介质及计算机设备 | |
CN110472231B (zh) | 一种识别法律文书案由的方法和装置 | |
CN114969334A (zh) | 异常日志检测方法、装置、电子设备及可读存储介质 | |
CN113723542A (zh) | 一种日志聚类处理方法及系统 | |
CN111723182B (zh) | 一种用于漏洞文本的关键信息抽取方法及装置 | |
CN112579781A (zh) | 文本归类方法、装置、电子设备及介质 | |
CN115221013B (zh) | 一种日志模式的确定方法、装置及设备 | |
CN116578700A (zh) | 日志分类方法、日志分类装置、设备及介质 | |
CN114465875A (zh) | 故障处理方法及装置 | |
CN112667666A (zh) | 一种基于N-gram的SQL运行时间预测方法及系统 | |
CN105260467A (zh) | 一种短信分类的方法及装置 | |
CN107436895B (zh) | 一种非结构化数据识别的方法和装置 | |
CN113064597B (zh) | 一种冗余代码的识别方法、装置和设备 | |
Xu et al. | Log Parsing using Semantic Filtering based Prompt Learning | |
CN117827655A (zh) | 测试用例的生成方法、机器可读存储介质和计算机设备 | |
CN118377901A (zh) | 一种日志聚类方法、装置、设备及存储介质 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |