CN117094316A - 日志模板提取方法、装置、计算机设备和存储介质 - Google Patents
日志模板提取方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN117094316A CN117094316A CN202310967182.9A CN202310967182A CN117094316A CN 117094316 A CN117094316 A CN 117094316A CN 202310967182 A CN202310967182 A CN 202310967182A CN 117094316 A CN117094316 A CN 117094316A
- Authority
- CN
- China
- Prior art keywords
- log
- target
- vocabulary
- processed
- template
- 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
Links
- 238000000605 extraction Methods 0.000 title claims abstract description 29
- 238000000034 method Methods 0.000 claims abstract description 35
- 238000004590 computer program Methods 0.000 claims abstract description 26
- 239000011159 matrix material Substances 0.000 claims description 59
- 238000004364 calculation method Methods 0.000 claims description 23
- 238000007781 pre-processing Methods 0.000 claims description 13
- 238000012545 processing Methods 0.000 claims description 12
- 230000011218 segmentation Effects 0.000 claims description 11
- 230000000694 effects Effects 0.000 abstract description 8
- 238000010586 diagram Methods 0.000 description 6
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000004140 cleaning Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000013501 data transformation Methods 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 210000001072 colon Anatomy 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 229910021389 graphene Inorganic materials 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/284—Lexical analysis, e.g. tokenisation or collocates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- 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)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Data Mining & Analysis (AREA)
- Probability & Statistics with Applications (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请涉及一种日志模板提取方法、装置、计算机设备、存储介质和计算机程序产品。所述方法包括:根据待处理日志包含的各个词汇的出现频次,从各个词汇中确定出所述待处理日志的目标词汇;目标词汇的出现频次大于所述各个词汇中除所述目标词汇之外的词汇的出现频次;根据所述待处理日志的目标词汇,查询预先确定的多个日志模板集合,得到与所述待处理日志对应的目标日志模板集合;每个日志模板集合包括的各个日志模板对应的目标词汇相同;分别获取所述目标日志模板集合中的各个日志模板与所述待处理日志之间的相似度;基于相似度,对所述目标日志模板集合进行更新,得到更新后的目标日志模板集合。采用本方法能够提高日志模板的提取效果。
Description
技术领域
本申请涉及软件算法技术领域,特别是涉及一种日志模板提取方法、装置、计算机设备、存储介质和计算机程序产品。
背景技术
系统日志在系统运维中起着重要作用,可以帮助管理者和运维人员调试系统故障和异常分析,分析系统故障原因。但随着系统规模日益增加,通过手工方式去检索和分析日志变得越来越不可能,需要利用机器进行或辅助进行日志自动化分析。日志模板提取是进行日志自动化分析第一步,日志模板提取的质量直接影响后续的分析结果。
现有技术中,往往使用日志分词后的长度进行分组和使用严格相似度或者长公共序列计算日志相似度。然而通过现有技术进行日志模板提取,存在提取效果差问题。
发明内容
基于此,有必要针对上述日志模板提取效果差技术问题,提供一种日志模板提取方法、装置、计算机设备、计算机可读存储介质和计算机程序产品。
第一方面,本申请提供了一种日志模板提取方法。所述方法包括:
根据待处理日志包含的各个词汇的出现频次,从所述各个词汇中确定出所述待处理日志的目标词汇;所述目标词汇的出现频次大于所述各个词汇中除所述目标词汇之外的词汇的出现频次;
根据所述待处理日志的目标词汇,查询预先确定的多个日志模板集合,得到与所述待处理日志对应的目标日志模板集合;每个日志模板集合包括的各个日志模板对应的目标词汇相同;
分别获取所述目标日志模板集合中的各个日志模板与所述待处理日志之间的相似度;
基于所述相似度,对所述目标日志模板集合进行更新,得到更新后的目标日志模板集合。
在其中一个实施例中,所述根据待处理日志包含的各个词汇的出现频次,从所述各个词汇中确定出所述待处理日志的目标词汇之前,还包括:
对所述待处理日志进行预处理,得到预处理后的日志;
按照预设的分隔符,对所述预处理后的日志进行分词处理,得到所述待处理日志包含的多个词汇。
在其中一个实施例中,所述待处理日志包括变量部分和常量部分;所述对所述待处理日志进行预处理,得到预处理后的日志,包括:
确定所述待处理日志的变量部分的日志信息;
删除所述变量部分的日志信息,或者使用预设的词汇替换所述变量部分的日志信息,得到所述预处理后的日志。
在其中一个实施例中,所述分别获取所述目标日志模板集合中的各个日志模板与所述待处理日志之间的相似度,包括:
针对所述目标日志模板集合中的任一个日志模板,构建所述任一个日志模板与所述待处理日志之间的相似度矩阵;所述相似度矩阵中的每个元素对应一个词汇组,所述词汇组包括所述任一个日志模板中的一个词汇和所述待处理日志中的一个词汇;
根据所述相似度矩阵中的每个元素对应的词汇组中的两个词汇之间的相关性,确定所述相似度矩阵中每个元素的元素值;
根据所述每个元素的元素值,确定所述相似度矩阵的规整路径距离;
基于所述规整路径距离,确定所述任一个日志模板与所述待处理日志之间的相似度。
在其中一个实施例中,所述根据所述相似度矩阵中的每个元素对应的词汇组中的两个词汇之间的相关性,确定所述相似度矩阵中每个元素的元素值,包括:
针对所述相似度矩阵中的任一个元素,若所述元素对应的两个词汇相同,则确定所述元素的元素值为0;
若所述元素对应的两个词汇不相同,则确定所述元素的元素值为1。
在其中一个实施例中,所述基于所述规整路径距离,确定所述任一个日志模板与所述待处理日志之间的相似度,包括:
获取所述任一个日志模板包含的各个词汇的第一数目,以及获取所述待处理日志包含的各个词汇的第二数目;
从所述第一数目和所述第二数目中,确定出数值更大的目标数目;
基于所述目标数目和所述规整路径距离,确定所述任一个日志模板与所述待处理日志之间的相似度。
在其中一个实施例中,所述基于所述相似度,对所述目标日志模板集合进行更新,得到更新后的目标日志模板集合,包括:
若所述目标日志模板集合中存在与所述待处理日志之间的相似度大于预设阈值的目标日志模板,则对所述待处理日志和所述目标日志模板进行合并处理,得到更新后的目标日志模板集合;
若所述目标日志模板集合中的各个日志模板与所述待处理日志之间的相似度均小于或等于所述预设阈值,则将所述待处理日志作为新的日志模板,将所述新的日志模板添加至所述目标日志模板集合中,得到更新后的目标日志模板集合。
第二方面,本申请还提供了一种日志模板提取装置。所述装置包括:
词汇确定模块,用于根据待处理日志包含的各个词汇的出现频次,从所述各个词汇中确定出所述待处理日志的目标词汇;所述目标词汇的出现频次大于所述各个词汇中除所述目标词汇之外的词汇的出现频次;
模板查询模块,用于根据所述待处理日志的目标词汇,查询预先确定的多个日志模板集合,得到与所述待处理日志对应的目标日志模板集合;每个日志模板集合包括的各个日志模板对应的目标词汇相同;
相似度计算模块,用于分别获取所述目标日志模板集合中的各个日志模板与所述待处理日志之间的相似度;
模板更新模块,用于基于所述相似度,对所述目标日志模板集合进行更新,得到更新后的目标日志模板集合。
第三方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
根据待处理日志包含的各个词汇的出现频次,从所述各个词汇中确定出所述待处理日志的目标词汇;所述目标词汇的出现频次大于所述各个词汇中除所述目标词汇之外的词汇的出现频次;
根据所述待处理日志的目标词汇,查询预先确定的多个日志模板集合,得到与所述待处理日志对应的目标日志模板集合;每个日志模板集合包括的各个日志模板对应的目标词汇相同;
分别获取所述目标日志模板集合中的各个日志模板与所述待处理日志之间的相似度;基于所述相似度,对所述目标日志模板集合进行更新,得到更新后的目标日志模板集合。
第四方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
根据待处理日志包含的各个词汇的出现频次,从所述各个词汇中确定出所述待处理日志的目标词汇;所述目标词汇的出现频次大于所述各个词汇中除所述目标词汇之外的词汇的出现频次;
根据所述待处理日志的目标词汇,查询预先确定的多个日志模板集合,得到与所述待处理日志对应的目标日志模板集合;每个日志模板集合包括的各个日志模板对应的目标词汇相同;
分别获取所述目标日志模板集合中的各个日志模板与所述待处理日志之间的相似度;
基于所述相似度,对所述目标日志模板集合进行更新,得到更新后的目标日志模板集合。
第五方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
根据待处理日志包含的各个词汇的出现频次,从所述各个词汇中确定出所述待处理日志的目标词汇;所述目标词汇的出现频次大于所述各个词汇中除所述目标词汇之外的词汇的出现频次;
根据所述待处理日志的目标词汇,查询预先确定的多个日志模板集合,得到与所述待处理日志对应的目标日志模板集合;每个日志模板集合包括的各个日志模板对应的目标词汇相同;
分别获取所述目标日志模板集合中的各个日志模板与所述待处理日志之间的相似度;
基于所述相似度,对所述目标日志模板集合进行更新,得到更新后的目标日志模板集合。
上述日志模板提取方法、装置、计算机设备、存储介质和计算机程序产品,通过统计待处理日志中的词频,提取词频更高的词汇作为目标词汇,根据目标词汇查询预先确定的日志模板集合,将对应的目标词汇相同的日志模板作为目标日志模板集合,并分别对将待处理日志分别与目标日志模板进行相似度计算,并根据计算得到的相似度对目标日志模板集合进行更新,利用高频词汇对日志模板进行查询提高了初步匹配效率,利用待处理日志和目标日志模板的相似度对目标日志模板集合进行更新,从而提高了日志模板的提取效果。
附图说明
图1为一个实施例中日志模板提取方法的应用环境图;
图2为一个实施例中日志模板提取方法的流程示意图;
图3为一个实施例中计算相似度步骤的流程示意图;
图4为一个实施例中根据相似度矩阵计算相似度的示意图;
图5为另一个实施例中在线日志模板提取方法的流程示意图;
图6为一个实施例中日志模板提取装置的结构框图;
图7为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例提供的日志模板提取方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信,服务器104采集终端102运行产生的待处理日志,并根据从各个词汇中确定出待处理日志的目标词汇。服务器104根据待处理日志的目标词汇,查询预先确定的多个日志模板集合,得到与待处理日志对应的目标日志模板集合,然后服务器104分别获取目标日志模板集合中的各个日志模板与待处理日志之间的相似度;基于相似度,服务器104对目标日志模板集合进行更新,得到更新后的目标日志模板集合。数据存储系统可以存储服务器104需要处理的数据。数据存储系统可以集成在服务器104上,也可以放在云上或其他网络服务器上。其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑、物联网设备和便携式可穿戴设备。服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种日志模板提取方法,以该方法应用于图1中的服务器104为例进行说明,包括以下步骤:
步骤S202,根据待处理日志包含的各个词汇的出现频次,从各个词汇中确定出待处理日志的目标词汇;目标词汇的出现频次大于各个词汇中除目标词汇之外的词汇的出现频次。
其中,日志是指系统日志是记录系统中硬件、软件和系统问题的信息,同时还可以监视系统中发生的事件。用户可以通过它来检查问题发生的原因,或者寻找受到攻击时攻击者留下的痕迹。系统日志包括系统日志、应用程序日志和安全日志。
其中,频次是指同一个词汇在日志中出现的次数。
可选地,服务器根据待处理日志中包含的每个词汇出现的频次,从待处理日志中包含的多个词汇中确认出目标词汇,目标词汇的出现的频次大于待处理日志中剩余的词汇的出现频次。
步骤S204,根据待处理日志的目标词汇,查询预先确定的多个日志模板集合,得到与待处理日志对应的目标日志模板集合;每个日志模板集合包括的各个日志模板对应的目标词汇相同。
其中,日志模板是指日志通常由常量和变量组成,也可称为模板词和参数词,通过提取其中的模板词构建成日志模板。
可选地,服务器获取各个日志模板集合对应的目标词汇;将待处理日志的目标词汇,分别与各个日志模板集合对应的目标词汇进行匹配,得到匹配结果;将对应的目标词汇与待处理日志的目标词汇相同的日志模板集合,确定为与待处理日志对应的目标日志模板集合。
步骤S206,分别获取目标日志模板集合中的各个日志模板与待处理日志之间的相似度。
其中,相似程度为文本相似度,即两个文本之间的相似程度,可以通过有监督方法和无监督方法进行计算得到,例如有监督方法用朴素贝叶斯分类器等有监督模型进行判断,无监督方法用欧氏距离等方法直接计算文本之间的距离或者相似度。
可选地,服务器通过计算分别获取目标日志模板集合中各个日志模板与待处理日志之间的相似度。
步骤S208,基于相似度,对目标日志模板集合进行更新,得到更新后的目标日志模板集合。
其中,更新是指对目标日志模板集合基于待处理日志进行调整,如合并,增加新日志模板等。
可选地,服务器根据计算的相似度大小,对目标日志模板集合进行更新调整,得到更新后的日志模板集合。
上述日志模板提取方法中,通过统计待处理日志中的词频,提取词频更高的词汇作为目标词汇,根据目标词汇查询预先确定的日志模板集合,将对应的目标词汇相同的日志模板作为目标日志模板集合,并分别对将待处理日志分别与目标日志模板进行相似度计算,并根据计算得到的相似度对目标日志模板集合进行更新,利用高频词汇对日志模板进行查询提高了初步匹配效率,利用待处理日志和目标日志模板的相似度对目标日志模板集合进行更新,从而提高了日志模板的提取效果。
在一个实施例中,步骤S202根据待处理日志包含的各个词汇的出现频次,从各个词汇中确定出待处理日志的目标词汇之前,还包括:
步骤S202a,对待处理日志进行预处理,得到预处理后的日志;
其中,预处理是指数据预处理,主要内容包括:数据清洗、数据集成、数据变换和数据规约等。
可选地,服务器对待处理日志中的词汇进行数据清洗、数据集成、数据变换和数据规约等。
步骤S202b,按照预设的分隔符,对预处理后的日志进行分词处理,得到待处理日志包含的多个词汇。
其中,预设分隔符可以为对预处理后的日志按照特殊符号,如逗号、句号、冒号等和空格进行分词处理。
其中,分词处理是指让计算机系统在汉语文本中的词与词之间自动加上空格或其它边界标记。
可选地,在处理后的日志中的词汇之间加上预设的特殊符号,得到进行分词处理后的待处理日志包含的多个词汇。
本实施例中,通过对待处理的日志进行预处理后,再进行分词处理,得到待处理日志包括的多个词汇,从而达到了切断了上下耦合,降低词序影响的效果。
在一个实施例中,待处理日志包括变量部分和常量部分;步骤S202a对待处理日志进行预处理,得到预处理后的日志,包括:
确定待处理日志的变量部分的日志信息;删除变量部分的日志信息,或者使用预设的词汇替换变量部分的日志信息,得到预处理后的日志。
其中,预处理可以为查找待处理日志中的变量词汇,并对其进行者替换处理,例如去掉日志时间、替换互联网协议地址、邮箱、哈希值等信息为特殊符号。
其中,待处理日志中的变量部分出现频次低于常量部分的出现频次。
可选地,服务器确定待处理日志中变量部分的日志信息,对变量部分的部分日志信息进行删除,或者用相同的特殊符号替换变量部分的部分日志信息,得到预处理后的日志。例如,将日志中变量部分的日志时间进行删除,并将变量部分的ip地址替换为“ip”,用“*”替换其它变量等。
本实施例中,通过对待处理日志中出现频次更低的变量部分进行删除和替换,使得后续进行相似度计算时,不将变量部分作为计算依据,提高了计算的准确性。
在一个实施例中,如图3所示,步骤S206分别获取目标日志模板集合中的各个日志模板与待处理日志之间的相似度,包括:
步骤S302,针对目标日志模板集合中的任一个日志模板,构建任一个日志模板与待处理日志之间的相似度矩阵;相似度矩阵中的每个元素对应一个词汇组,词汇组包括任一个日志模板中的一个词汇和待处理日志中的一个词汇。
其中,相似度矩阵是指用于计算相似度的矩阵,矩阵是按照长房阵列排列的复数或者实数集合。
其中,词汇组是指矩阵中每个元素对应的行和列对应的待处理日志的一个词汇和日志模板的一个词汇。
可选地,服务器针对日志模板集合中的任一个日志模板,将该日志模板和待处理日志中包含的词汇分别作为行和列,构建任一个日志模板和待处理日志之间的相似度矩阵,相似度矩阵中每个元素对应了一个词汇组,词汇组包括了任一日志模板中的一个词汇和待处理日志中的一个词汇。
步骤S304,根据相似度矩阵中的每个元素对应的词汇组中的两个词汇之间的相关性,确定相似度矩阵中每个元素的元素值。
其中,相关性可以为词汇组中两个词汇相同或者不相同。
可选地,服务器根据相似度矩阵中的每一个元素对应的词汇组中的两个词汇是否相同或者不相同,确定对应相似度矩阵中每个元素的元素值。
步骤S306,根据每个元素的元素值,确定相似度矩阵的规整路径距离。
其中,规整路径距离是指通过动态规整算法计算相似度矩阵从左上角到右下角对角线的最短距离。
可选地,服务器根据相似度矩阵中每个元素的元素值,采用动态规整算法计算该相似度矩阵从左上角到右下角对角线的最短距离。
步骤S308,基于规整路径距离,确定任一个日志模板与待处理日志之间的相似度。
其中,相似度可以为通过预设公式计算后得到。
可选地,服务器将规整路径距离代入预设的相似度计算公式计算,得到任一个日志模板和待处理日志之间的相似度。
本实施例中,通过根据目标日志模板和待处理日志构建相似度矩阵,并计算该相似度矩阵的规整路径距离,基于规整路径距离计算相似度,使得两个长度不同的日志也能计算出更准确的相似度,提高了计算的准确性。
在一个实施例中,步骤S304根据相似度矩阵中的每个元素对应的词汇组中的两个词汇之间的相关性,确定相似度矩阵中每个元素的元素值,包括:
针对相似度矩阵中的任一个元素,若元素对应的两个词汇相同,则确定元素的元素值为0;若元素对应的两个词汇不相同,则确定元素的元素值为1。
其中,元素是指组成矩阵的多个实数或者复数。
可选地,服务器针对相似度矩阵中的任一个元素,若该元素对应的词汇组中两个词汇相同,则给该元素赋值为0;若该元素对应的词汇组中两个词汇不相同,则给该元素赋值为1。
本实施例中,通过根据任一个日志模板的词汇和待处理日志的词汇的相关性,为对应的相似矩阵中的元素赋值,为计算规整路径距离做数据基础。
在一个实施例中,步骤S308基于规整路径距离,确定任一个日志模板与待处理日志之间的相似度,包括:
获取任一个日志模板包含的各个词汇的第一数目,以及获取待处理日志包含的各个词汇的第二数目;从第一数目和第二数目中,确定出数值更大的目标数目;基于目标数目和规整路径距离,确定任一个日志模板与待处理日志之间的相似度。
其中,第一数目和第二数目分别为待处理日志的词汇数目长度和目标日志模板集合中任一日志模板的词汇数目长度。
可选地,服务器获取任一个日志模板包含的各个词汇的第一数目,以及获取待处理日志包含的各个词汇的第二数目,从第二数目中确定出数值更大的目标数目,基于目标数目和规整路径距离,代入计算公式计算得到任一个日志模板与待处理日志之间的相似度,如图4所示,展示了根据相似度矩阵计算相似度的示意图。图中作为相似矩阵的行的日志包含Connect、to、service、port和failed五个目标词汇,即第一数目为5;作为相似矩阵的列的日志包含Connect、to、service和failed,四个目标词汇,即第二数目为4。在此图中根据相似矩阵中的元素值对规整路径距离进行计算,从相似矩阵左上角到右下角最小距离,即路径经过的元素值的和最小,计算得到规整路径距离为1,再由如下公式计算获得相似度:
(max(len1,len2)-d)/max(len1,len2)
其中,d为规整路径距离,len1、len2分别为第一数目和第二数目,根据上述分析max(len1,len2)的值为5,相似度计算结果为4/5。
本实施例中,通过采用动态时间规整算法进行相似度计算,减小了因为长度不同而导致相似度计算的误差。
在一个实施例中,步骤S208基于相似度,对目标日志模板集合进行更新,得到更新后的目标日志模板集合,包括:
若目标日志模板集合中存在与待处理日志之间的相似度大于预设阈值的目标日志模板,则对待处理日志和目标日志模板进行合并处理,得到更新后的目标日志模板集合;若目标日志模板集合中的各个日志模板与待处理日志之间的相似度均小于或等于预设阈值,则将待处理日志作为新的日志模板,将新的日志模板添加至目标日志模板集合中,得到更新后的目标日志模板集合。
其中,待处理日志可以为系统中的实时日志,目标日志模板集合是由离线日志经过预处理和分词处理后,提取出高频词得到的。
可选地,若目标日志模板集合中存在与待处理日志之间相似度大于预设阈值的目标日志模板,服务器则将该待处理日志和对应的目标日志模板进行合并处理,得到更新后的目标日志模板;若目标日志模板中的各个日志模板与待处理日志之间的相似度均小于阈值,则服务器将该待处理日志作为新的日志模板,将新的日志模板添加至目标日志模板集合中,得到更新后的目标日志模板集合。
本实施例中,通过将计算得到的相似度与预设的阈值做比较,并根据比较结果对目标日志模板集合进行更新,以达到了动态更新日志模板集合,提高提取日志模板准确度的效果。
在另一个实施例中,如图5所示,提供了一种在线日志模板提取方法,具体步骤包括:
步骤S502,确定待处理日志的变量部分的日志信息;删除变量部分的日志信息,或者使用预设的词汇替换变量部分的日志信息,得到预处理后的日志;按照预设的分隔符,对预处理后的日志进行分词处理,得到待处理日志包含的多个词汇。
具体地,服务器确定待处理日志中变量部分的日志信息,对变量部分的日志信息进行删除,或者用相同的特殊符号替换变量部分的日志信息,得到预处理后的日志。在处理后的日志中的词汇之间加上预设的特殊符号,得到进行分词处理后的待处理日志包含的多个词汇。
步骤S504,根据待处理日志包含的各个词汇的出现频次,从各个词汇中确定出待处理日志的目标词汇;目标词汇的出现频次大于各个词汇中除目标词汇之外的词汇的出现频次。
具体地,服务器根据待处理日志中包含的每个词汇出现的频次,从待处理日志中包含的多个词汇中确认出目标词汇,目标词汇的出现的频次大于待处理日志中剩余的词汇的出现频次。
步骤S506,根据待处理日志的目标词汇,查询预先确定的多个日志模板集合,得到与待处理日志对应的目标日志模板集合;每个日志模板集合包括的各个日志模板对应的目标词汇相同。
具体地,服务器获取各个日志模板集合对应的目标词汇;将待处理日志的目标词汇,分别与各个日志模板集合对应的目标词汇进行匹配,得到匹配结果;将对应的目标词汇与待处理日志的目标词汇相同的日志模板集合,确定为与待处理日志对应的目标日志模板集合。
步骤S508,针对目标日志模板集合中的任一个日志模板,构建任一个日志模板与待处理日志之间的相似度矩阵;相似度矩阵中的每个元素对应一个词汇组,词汇组包括任一个日志模板中的一个词汇和待处理日志中的一个词汇。
具体地,服务器针对日志模板集合中的任一个日志模板,将该日志模板和待处理日志中包含的词汇分别作为行和列,构建任一个日志模板和待处理日志之间的相似度矩阵,相似度矩阵中每个元素对应了一个词汇组,词汇组包括了任一日志模板中的一个词汇和待处理日志中的一个词汇。
步骤S510,针对相似度矩阵中的任一个元素,若元素对应的两个词汇相同,则确定元素的元素值为0;若元素对应的两个词汇不相同,则确定元素的元素值为1。
具体地,服务器针对相似度矩阵中的任一个元素,若该元素对应的词汇组中两个词汇相同,则给该元素赋值为0;若该元素对应的词汇组中两个词汇不相同,则给该元素赋值为1。
步骤S512,获取任一个日志模板包含的各个词汇的第一数目,以及获取待处理日志包含的各个词汇的第二数目;从第一数目和第二数目中,确定出数值更大的目标数目;基于目标数目和规整路径距离,确定任一个日志模板与待处理日志之间的相似度。
具体地,服务器获取任一个日志模板包含的各个词汇的第一数目,以及获取待处理日志包含的各个词汇的第二数目,从第二数目中确定出数值更大的目标数目,基于目标数目和规整路径距离,代入计算公式计算得到任一个日志模板与待处理日志之间的相似度。
步骤S514,若目标日志模板集合中存在与待处理日志之间的相似度大于预设阈值的目标日志模板,则对待处理日志和目标日志模板进行合并处理,得到更新后的目标日志模板集合;若目标日志模板集合中的各个日志模板与待处理日志之间的相似度均小于或等于预设阈值,则将待处理日志作为新的日志模板,将新的日志模板添加至目标日志模板集合中,得到更新后的目标日志模板集合。
具体地,若目标日志模板集合中存在与待处理日志之间相似度大于预设阈值的目标日志模板,服务器则将该待处理日志和对应的目标日志模板进行合并处理,得到更新后的目标日志模板;若目标日志模板中的各个日志模板与待处理日志之间的相似度均小于阈值,则服务器将该待处理日志作为新的日志模板,将新的日志模板添加至目标日志模板集合中,得到更新后的目标日志模板集合。
本实施例中,通过统计待处理日志中的词频,提取词频更高的词汇作为目标词汇,根据目标词汇查询预先确定的日志模板集合,将对应的目标词汇相同的日志模板作为目标日志模板集合,并分别对将待处理日志分别与目标日志模板进行相似度计算,并根据计算得到的相似度对目标日志模板集合进行更新,利用高频词汇对日志模板进行查询提高了初步匹配效率,利用待处理日志和目标日志模板的相似度对目标日志模板集合进行更新,从而提高了日志模板的提取效果。
应该理解的是,虽然如上的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的日志模板提取方法的日志模板提取装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个日志模板提取装置实施例中的具体限定可以参见上文中对于日志模板提取方法的限定,在此不再赘述。
在一个实施例中,如图6所示,提供了一种日志模板提取装置600,包括:词汇确定模块602、模板查询模块604、相似度计算模块606和模板更新模块608,其中:
词汇确定模块602,用于根据待处理日志包含的各个词汇的出现频次,从各个词汇中确定出待处理日志的目标词汇;目标词汇的出现频次大于各个词汇中除目标词汇之外的词汇的出现频次。
模板查询模块604,用于根据待处理日志的目标词汇,查询预先确定的多个日志模板集合,得到与待处理日志对应的目标日志模板集合;每个日志模板集合包括的各个日志模板对应的目标词汇相同。
相似度计算模块606,用于分别获取目标日志模板集合中的各个日志模板与待处理日志之间的相似度。
模板更新模块608,用于基于相似度,对目标日志模板集合进行更新,得到更新后的目标日志模板集合。
进一步地,在一个实施例中,词汇确定模块602,还用于对待处理日志进行预处理,得到预处理后的日志;按照预设的分隔符,对预处理后的日志进行分词处理,得到待处理日志包含的多个词汇。
进一步地,在一个实施例中,待处理日志包括变量部分和常量部分,词汇确定模块602,还用于确定待处理日志的变量部分的日志信息;删除变量部分的日志信息,或者使用预设的词汇替换变量部分的日志信息,得到预处理后的日志。
进一步地,在一个实施例中,相似度计算模块606,还用于针对目标日志模板集合中的任一个日志模板,构建任一个日志模板与待处理日志之间的相似度矩阵;相似度矩阵中的每个元素对应一个词汇组,词汇组包括任一个日志模板中的一个词汇和待处理日志中的一个词汇;根据相似度矩阵中的每个元素对应的词汇组中的两个词汇之间的相关性,确定相似度矩阵中每个元素的元素值;根据每个元素的元素值,确定相似度矩阵的规整路径距离;基于规整路径距离,确定任一个日志模板与待处理日志之间的相似度。
进一步地,在一个实施例中,相似度计算模块606,还用于针对相似度矩阵中的任一个元素,若元素对应的两个词汇相同,则确定元素的元素值为0;若元素对应的两个词汇不相同,则确定元素的元素值为1。
进一步地,在一个实施例中,相似度计算模块606,还用于获取任一个日志模板包含的各个词汇的第一数目,以及获取待处理日志包含的各个词汇的第二数目;从第一数目和第二数目中,确定出数值更大的目标数目;基于目标数目和规整路径距离,确定任一个日志模板与待处理日志之间的相似度。
进一步地,在一个实施例中,模板更新模块608,还用于若目标日志模板集合中存在与待处理日志之间的相似度大于预设阈值的目标日志模板,则对待处理日志和目标日志模板进行合并处理,得到更新后的目标日志模板集合;若目标日志模板集合中的各个日志模板与待处理日志之间的相似度均小于或等于预设阈值,则将待处理日志作为新的日志模板,将新的日志模板添加至目标日志模板集合中,得到更新后的目标日志模板集合。
上述日志模板提取装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图7所示。该计算机设备包括处理器、存储器、输入/输出接口(Input/Output,简称I/O)和通信接口。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储待处理日志,日志模板集合,构建的相似矩阵和相似度计算过程中涉及的数据。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种日志模板提取方法。
本领域技术人员可以理解,图7中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (11)
1.一种日志模板提取方法,其特征在于,所述方法包括:
根据待处理日志包含的各个词汇的出现频次,从所述各个词汇中确定出所述待处理日志的目标词汇;所述目标词汇的出现频次大于所述各个词汇中除所述目标词汇之外的词汇的出现频次;
根据所述待处理日志的目标词汇,查询预先确定的多个日志模板集合,得到与所述待处理日志对应的目标日志模板集合;每个日志模板集合包括的各个日志模板对应的目标词汇相同;
分别获取所述目标日志模板集合中的各个日志模板与所述待处理日志之间的相似度;
基于所述相似度,对所述目标日志模板集合进行更新,得到更新后的目标日志模板集合。
2.根据权利要求1所述的方法,其特征在于,所述根据待处理日志包含的各个词汇的出现频次,从所述各个词汇中确定出所述待处理日志的目标词汇之前,还包括:
对所述待处理日志进行预处理,得到预处理后的日志;
按照预设的分隔符,对所述预处理后的日志进行分词处理,得到所述待处理日志包含的多个词汇。
3.根据权利要求2所述的方法,其特征在于,所述待处理日志包括变量部分和常量部分;所述对所述待处理日志进行预处理,得到预处理后的日志,包括:
确定所述待处理日志的变量部分的日志信息;
删除所述变量部分的日志信息,或者使用预设的词汇替换所述变量部分的日志信息,得到所述预处理后的日志。
4.根据权利要求1所述的方法,其特征在于,所述分别获取所述目标日志模板集合中的各个日志模板与所述待处理日志之间的相似度,包括:
针对所述目标日志模板集合中的任一个日志模板,构建所述任一个日志模板与所述待处理日志之间的相似度矩阵;所述相似度矩阵中的每个元素对应一个词汇组,所述词汇组包括所述任一个日志模板中的一个词汇和所述待处理日志中的一个词汇;
根据所述相似度矩阵中的每个元素对应的词汇组中的两个词汇之间的相关性,确定所述相似度矩阵中每个元素的元素值;
根据所述每个元素的元素值,确定所述相似度矩阵的规整路径距离;
基于所述规整路径距离,确定所述任一个日志模板与所述待处理日志之间的相似度。
5.根据权利要求4所述的方法,其特征在于,所述根据所述相似度矩阵中的每个元素对应的词汇组中的两个词汇之间的相关性,确定所述相似度矩阵中每个元素的元素值,包括:
针对所述相似度矩阵中的任一个元素,若所述元素对应的两个词汇相同,则确定所述元素的元素值为0;
若所述元素对应的两个词汇不相同,则确定所述元素的元素值为1。
6.根据权利要求4所述的方法,其特征在于,所述基于所述规整路径距离,确定所述任一个日志模板与所述待处理日志之间的相似度,包括:
获取所述任一个日志模板包含的各个词汇的第一数目,以及获取所述待处理日志包含的各个词汇的第二数目;
从所述第一数目和所述第二数目中,确定出数值更大的目标数目;
基于所述目标数目和所述规整路径距离,确定所述任一个日志模板与所述待处理日志之间的相似度。
7.根据权利要求1所述的方法,其特征在于,所述基于所述相似度,对所述目标日志模板集合进行更新,得到更新后的目标日志模板集合,包括:
若所述目标日志模板集合中存在与所述待处理日志之间的相似度大于预设阈值的目标日志模板,则对所述待处理日志和所述目标日志模板进行合并处理,得到更新后的目标日志模板集合;
若所述目标日志模板集合中的各个日志模板与所述待处理日志之间的相似度均小于或等于所述预设阈值,则将所述待处理日志作为新的日志模板,将所述新的日志模板添加至所述目标日志模板集合中,得到更新后的目标日志模板集合。
8.一种日志模板提取装置,其特征在于,所述装置包括:
词汇确定模块,用于根据待处理日志包含的各个词汇的出现频次,从所述各个词汇中确定出所述待处理日志的目标词汇;所述目标词汇的出现频次大于所述各个词汇中除所述目标词汇之外的词汇的出现频次;
模板查询模块,用于根据所述待处理日志的目标词汇,查询预先确定的多个日志模板集合,得到与所述待处理日志对应的目标日志模板集合;每个日志模板集合包括的各个日志模板对应的目标词汇相同;
相似度计算模块,用于分别获取所述目标日志模板集合中的各个日志模板与所述待处理日志之间的相似度;
模板更新模块,用于基于所述相似度,对所述目标日志模板集合进行更新,得到更新后的目标日志模板集合。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述的方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
11.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310967182.9A CN117094316A (zh) | 2023-08-02 | 2023-08-02 | 日志模板提取方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310967182.9A CN117094316A (zh) | 2023-08-02 | 2023-08-02 | 日志模板提取方法、装置、计算机设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117094316A true CN117094316A (zh) | 2023-11-21 |
Family
ID=88770743
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310967182.9A Pending CN117094316A (zh) | 2023-08-02 | 2023-08-02 | 日志模板提取方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117094316A (zh) |
-
2023
- 2023-08-02 CN CN202310967182.9A patent/CN117094316A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111612041B (zh) | 异常用户识别方法及装置、存储介质、电子设备 | |
CN112148772A (zh) | 告警根因识别方法、装置、设备和存储介质 | |
WO2018213425A1 (en) | Template based data reduction for security related information flow data | |
JP2022118108A (ja) | ログ監査方法、装置、電子機器、媒体およびコンピュータプログラム | |
US11907659B2 (en) | Item recall method and system, electronic device and readable storage medium | |
US9454561B2 (en) | Method and a consistency checker for finding data inconsistencies in a data repository | |
WO2019238125A1 (zh) | 信息处理方法、相关设备及计算机存储介质 | |
US20220005546A1 (en) | Non-redundant gene set clustering method and system, and electronic device | |
CN112199344B (zh) | 一种日志分类的方法和装置 | |
CN109145162A (zh) | 用于确定数据相似度的方法、设备和计算机可读存储介质 | |
CN111506608A (zh) | 一种结构化文本的比较方法和装置 | |
CN112685324A (zh) | 一种生成测试方案的方法及系统 | |
CN117033424A (zh) | 慢sql语句的查询优化方法、装置和计算机设备 | |
CN110083731B (zh) | 图像检索方法、装置、计算机设备及存储介质 | |
CN109213972B (zh) | 确定文档相似度的方法、装置、设备和计算机存储介质 | |
WO2024103436A1 (zh) | 设备缺陷数据规则库构建方法及设备缺陷关联性分析方法 | |
CN117094316A (zh) | 日志模板提取方法、装置、计算机设备和存储介质 | |
CN114969036A (zh) | 数据检索方法及装置 | |
CN116599666B (zh) | 密码字典生成方法、装置、计算机设备和存储介质 | |
CN116304253B (zh) | 数据存储方法、数据检索方法和识别相似视频的方法 | |
CN115168409B (zh) | 数据库分表的数据查询方法、装置和计算机设备 | |
US20240303543A1 (en) | Model training method and model training apparatus | |
CN116665714A (zh) | 语音质检方法、装置、计算机设备和存储介质 | |
CN117349518A (zh) | 确定最远邻候选点的方法、装置、计算机设备及存储介质 | |
CN118760664A (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 |