CN113590421A - 日志模板提取方法、程序产品及存储介质 - Google Patents
日志模板提取方法、程序产品及存储介质 Download PDFInfo
- Publication number
- CN113590421A CN113590421A CN202110855197.7A CN202110855197A CN113590421A CN 113590421 A CN113590421 A CN 113590421A CN 202110855197 A CN202110855197 A CN 202110855197A CN 113590421 A CN113590421 A CN 113590421A
- Authority
- CN
- China
- Prior art keywords
- log
- word
- real
- similarity
- time
- 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.)
- Granted
Links
- 238000000605 extraction Methods 0.000 title claims abstract description 54
- 238000003860 storage Methods 0.000 title claims abstract description 13
- 238000000034 method Methods 0.000 claims abstract description 45
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 17
- 230000011218 segmentation Effects 0.000 claims description 114
- 238000004364 calculation method Methods 0.000 claims description 14
- 238000004590 computer program Methods 0.000 claims description 13
- 230000000694 effects Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 8
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 238000004458 analytical method Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000000670 limiting effect Effects 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000007670 refining Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3065—Monitoring arrangements determined by the means or processing involved in reporting the monitored data
- G06F11/3072—Monitoring arrangements determined by the means or processing involved in reporting the monitored data where the reporting involves data filtering, e.g. pattern matching, time or event triggered, adaptive or policy-based reporting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/3331—Query processing
- G06F16/334—Query execution
- G06F16/3344—Query execution using natural language analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/35—Clustering; Classification
-
- 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/289—Phrasal analysis, e.g. finite state techniques or chunking
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Quality & Reliability (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- General Health & Medical Sciences (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种日志模板提取方法、程序产品及存储介质,该方法包括以下步骤:获取实时日志,基于日志聚类文本相似性算法,获得实时日志与日志类别之间的相似度;基于所述相似度,将所述实时日志归类至对应的所述日志类别中,生成更新后的日志类别;对所述更新后的日志类别中的日志进行模板提取,获得日志模板;本发明旨在提高日志模板提取的效率及准确性。
Description
技术领域
本发明涉及计算机信息处理领域,尤其涉及一种日志模板提取方法、程序产品及存储介质。
背景技术
网络设备、系统及服务程序等,在运作时都会产生一个叫日志(log)的事件记录;每一行日志都记载着日期、时间、使用者及动作等相关操作的描述,且对于日志格式解析是一个必不可少的步骤,因此,日志模板提取对于日志分析有着非常重要的意义。目前,通常采用基于正则表达式的日志解析方法,一般包括两种:一种是通过阅读相关技术文档,获得源日志的格式模板说明;另一种是通过人工去分析源日志的格式手工编写日志格式模板。这种日志模板提取的方法,只适用于已知格式模板的日志。当海量格式未知的日志混杂在一起,并且没有相关技术文档时,很难通过人工分析的方法得到描述日志格式的模板。
专利申请号为201510391607.1公开了一种网络安全日志模板抽取方法及装置,采用DBSCAN算法或者OPTICS算法对不包含时间和IP地址的日志信息进行聚类,把具有相似格式的日志划分到同一类中;对于每一类中的日志,利用LDA Gibbs sampling算法,将每个主题中分布最大的词作为模板词,用来描述日志的格式,提取出日志中描述格式的模板词,得到日志格式的模板。其中上述专利利用LDA主题模型在每个主题中提取模板词,必须要事先假定模板词的个数,这对于每个主题中模板词的提取具有限制作用(比如,事先假定模板词个数为5个,但该主题中真正的模板词为7个),直接影响模板词提取的正确率。
发明内容
有鉴于此,本申请实施例提供一种日志模板提取方法、程序产品及存储介质,旨在提高日志模板提取的效率及准确性。
本申请实施例提供了一种日志模板提取方法,所述方法包括:
获取实时日志,基于日志聚类文本相似性算法,获得实时日志与日志类别之间的相似度;
基于所述相似度,将所述实时日志归类至对应的所述日志类别中,生成更新后的日志类别;
对所述更新后的日志类别中的日志进行模板提取,获得日志模板。
在一实施例中,所述获取实时日志,基于日志聚类文本相似性算法,获得实时日志与日志类别之间的相似度,包括:
利用日志分词方法,获得所述实时日志的分词结果;
利用变量词判定方法将所述实时日志的分词结果中的变量词去除,生成实时日志的无变量词结果;
获得每个日志类别中多个历史日志的分词结果;
利用变量词判定方法将所述多个历史日志的分词结果中的变量词去除,生成多个历史日志的无变量词结果;
计算所述实时日志的无变量词结果与所述多个历史日志的无变量词结果之间的相似度的平均值,生成实时日志与每个所述日志类别之间的相似度。
在一实施例中,所述利用日志分词方法,获得所述实时日志的分词结果,包括:
获取告警分类词;
若所述实时日志中不存在所述告警分类词,则对所述实时日志执行第一次字符串替换操作,生成第一字符串替换结果;
基于第一设定字符,对所述第一字符串替换结果进行判断;
若所述第一字符串替换结果中分词的前一个字符以及后一个字符不为所述第一设定字符或者所述第一字符串替换结果中分词的前一个字符以及后一个字符为所述第一设定字符且所述第一字符串替换结果中的分词包含第二设定字符,则对所述分词执行第二次字符串替换操作,生成第二字符串替换结果;利用第二字符串替换结果中的符号进行分词,生成分词列表;
若所述第一字符串替换结果中分词的前一个字符以及后一个字符为所述第一设定字符且所述第一字符串替换结果中的分词不包含第二设定字符,则将所述分词加入至所述分词列表中;
遍历所述分词列表中的分词;
若所述分词不为空字符串且所述分词为关键词,则将所述分词加入重点词表中;
若所述分词不为空字符串且所述分词不为关键词,同时所述分词的前缀为告警键前缀词表中的前缀词且除所述分词的前缀外仅包括数字与符号,则将所述分词加入告警键词表中;或者,若所述分词不为空字符串且所述分词不为关键词,同时所述分词为IP地址格式,则将所述分词加入告警键词表中;
生成并返回所述分词列表、所述重点词列表以及所述告警键词表。
在一实施例中,所述利用日志分词方法,获得所述实时日志的分词结果,还包括:
以所述告警分类词为界,将所述实时日志分为第一日志以及第二日志;
递归调用所述日志分词方法,对所述第一日志以及所述第二日志进行分词;
将所述第一日志的分词结果以及所述第二日志的分词结果进行合并,生成所述实时日志的分词结果。
在一实施例中,所述计算所述实时日志的无变量词结果与所述多个历史日志的无变量词结果之间的相似度的平均值,生成实时日志与每个所述日志类别之间的相似度,包括:
获得所述实时日志的无变量词结果中的重点词列表的第一长度以及所述历史日志的无变量词结果中的重点词列表的第二长度;
若所述第一长度不等于所述第二长度,则所述实时日志的无变量词结果与所述历史日志的无变量词结果的相似度为零;
若所述第一长度等于所述第二长度且不为零,同时所述实时日志与所述历史日志的无变量词结果中的重点词列表结果相同且均包含告警分类词,则所述实时日志的无变量词结果与所述历史日志的无变量词结果的相似度为一;
若所述第一长度以及所述第二长度均为零或者所述实时日志与所述历史日志的无变量词结果中的重点词列表结果不相同且均不包含告警分类词,则利用相似度计算公式,基于所述实时日志的无变量词结果中的分词结果列表与所述历史日志的无变量词结果中的分词结果列表的交集、所述实时日志的无变量词结果中的分词结果列表的长度、所述历史日志的无变量词结果中的分词结果列表的长度,计算获得实时日志的无变量词结果与所述历史日志的无变量词结果的相似度;
基于所述实时日志的无变量词结果与多个所述历史日志的无变量词结果的相似度,计算获得所述相似度的平均值,生成实时日志与每个所述日志类别之间的相似度。
在一实施例中,所述基于所述相似度,将所述实时日志归类至对应的所述日志类别中,生成更新后的日志类别,包括:
若所述相似度低于相似度阈值,则将所述实时日志作为新类别加入日志类别并生成新类别更新信息;
若所述相似度高于相似度阈值且所述相似度的最大值对应的日志类别中的历史日志数量小于数量阈值,则将所述实时日志归类至所述相似度的最大值对应的日志类别。
在一实施例中,所述基于所述相似度,将所述实时日志归类至对应的所述日志类别中,生成更新后的日志类别,还包括:
若所述相似度高于相似度阈值且所述相似度的最大值对应的日志类别中的历史日志数量大于或者等于数量阈值,同时在时间阈值内未监测到所述新类别更新信息,则停止日志类别的更新操作。
在一实施例中,所述对所述更新后的日志类别中的日志进行模板提取,获得日志模板,包括:
获得所述更新后的日志类别中分词数量最多的日志作为参考日志;
获得所述参考日志的分词结果,遍历所述参考日志的分词结果中的分词列表;
若所述分词为变量词,则对所述变量词进行标记;
若所述分词不为变量词,且所述分词存在于所述日志类别中其他日志中,则将所述变量词标记为关键词;
基于所述参考日志、所述分词结果、所述变量词标记以及所述关键词,生成所述日志模板。
为实现上述目的,还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现上述任一所述的日志模板提取方法的步骤。
为实现上述目的,还提供一种计算机存储介质,所述计算机存储介质上存储有日志模板提取方法程序,所述日志模板提取方法程序被处理器执行时实现上述任一所述的日志模板提取方法的步骤。
本申请实施例中提供的一个或多个技术方案,至少具有如下技术效果或优点:获取实时日志,基于日志聚类文本相似性算法,获得实时日志与日志类别之间的相似度;通过获取当前系统中的实时日志,利用日志聚类文本相似性算法,计算实时日志与日志类别之间的相似度,提高日志聚类效率。
基于所述相似度,将所述实时日志归类至对应的所述日志类别中,生成更新后的日志类别;通过对相似度与相似度阈值的判断,对实时日志进行归类,保证实时日志归类的正确性,从而保证日志聚类效果。
对所述更新后的日志类别中的日志进行模板提取,获得日志模板;通过对日志类别中的聚类产生的日志进行模型提取,获得准确的日志模板。本申请旨在提高日志模板提取的效率及准确性。
附图说明
图1为本申请日志模板提取方法的第一实施例;
图2为本申请日志模板提取方法第一实施例中步骤S110的具体实施步骤;
图3为本申请日志模板提取方法步骤S111的具体实施步骤;
图4为本申请日志模板提取方法步骤S111的另一具体实施步骤;
图5为本申请日志模板提取方法步骤S115的具体实施步骤;
图6为本申请日志模板提取方法第一实施例中步骤S120的具体实施步骤;
图7为本申请日志模板提取方法第一实施例中步骤S130的具体实施步骤。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例的主要解决方案是:获取实时日志,基于日志聚类文本相似性算法,获得实时日志与日志类别之间的相似度;基于所述相似度,将所述实时日志归类至对应的所述日志类别中,生成更新后的日志类别;对所述更新后的日志类别中的日志进行模板提取,获得日志模板;本发明旨在提高日志模板提取的效率及准确性。
为了更好的理解上述技术方案,下面将结合说明书附图以及具体的实施方式对上述技术方案进行详细的说明。
参照图1,图1为本申请日志模板提取方法的第一实施例,所述方法包括:
步骤S110:获取实时日志,基于日志聚类文本相似性算法,获得实时日志与日志类别之间的相似度。
具体地,日志聚类文本相似性算法可以是结合分词算法以及变量词判断方法,并且利用得到的重点词列表进行早停判断,提高相似度计算的效率。
具体地,日志类别可以是已存在的历史类别,其中日志类别可以是历史数据中提取获得,或者可以是人工提取的,在此并不作限定;需要另外说明的是,若日志类别为空,即日志类别不存在不存在历史日志,则将当前的实时日志作为日志类别中的新类以更新日志类别。
步骤S120:基于所述相似度,将所述实时日志归类至对应的所述日志类别中,生成更新后的日志类别;。
具体地,在本步骤中,可以根据相似度与相似度阈值之间的关系,对实时日志进行归类,将每个实时日志归类到对应的日志类别中。
步骤S130:对所述更新后的日志类别中的日志进行模板提取,获得日志模板。
具体地,在日志类别聚类获得足够量的实时日志,则对每个日志类别中已有的或者是聚类产生的日志进行日志模板提取,即对分词结果中的词进行更准确的关键词和变量词识别,以获得准确的日志模板。
需要另外说明的是,本实施例可以应用到告警日志模板的提取,以能自动对实时日志进行告警类分类并提取和匹配告警信息并实现实时告警。
在上述实施例中,存在的有益效果为:获取实时日志,基于日志聚类文本相似性算法,获得实时日志与日志类别之间的相似度;通过获取当前系统中的实时日志,利用日志聚类文本相似性算法,计算实时日志与日志类别之间的相似度,提高日志聚类效率。
基于所述相似度,将所述实时日志归类至对应的所述日志类别中,生成更新后的日志类别;通过对相似度与相似度阈值的判断,对实时日志进行归类,保证实时日志归类的正确性,从而保证日志聚类效果。
对所述更新后的日志类别中的日志进行模板提取,获得日志模板;通过对日志类别中的聚类产生的日志进行模型提取,获得准确的日志模板。本申请旨在提高日志模板提取的效率及准确性。
参照图2,图2为本申请日志模板提取方法第一实施例中步骤S110的具体实施步骤,所述获取实时日志,基于日志聚类文本相似性算法,获得实时日志与日志类别之间的相似度,包括:
步骤S111:利用日志分词方法,获得所述实时日志的分词结果。
具体地,将实时日志利用日志分词方法进行分词,获得实时日志的分词列表、重点词列表以及告警键词表。
步骤S112:利用变量词判定方法将所述实时日志的分词结果中的变量词去除,生成实时日志的无变量词结果。
具体地,变量词判定方法可以是判断分词结果中的词是否为变量词的方法;其中,分词结果中的词至少包括变量词以及固定词。
在本实施例中,变量词判定方法具体可以是以下至少之一:出现在变量词表中,则判定为变量词;其中变量词表为预先设定的;或者被括号包裹且包含数字,则判定为变量词;或者被中括号包裹且包含数字,则判定为变量词;或者被尖括号包裹且包含数字,则判定为变量词;或者被双引号包裹且包含数字,则判定为变量词;或者被单引号包裹且包含数字,则判定为变量词;或者仅由数字与符号构成且不再告警分类词表中和关键词表中,则判定为变量词;否则其他的分词则被判定为固定词。
在本实施例中,并不限定于上述提及的变量词判定方法,也可以是根据分词结果中词在同自然类的其他日志中出现的情况来判断是否为变量词。
步骤S113:获得每个日志类别中多个历史日志的分词结果。
具体地,将日志类别中的多个历史日志利用日志分词方法进行分词,获得历史日志的分词列表、重点词列表以及告警键词表。
步骤S114:利用变量词判定方法将所述多个历史日志的分词结果中的变量词去除,生成多个历史日志的无变量词结果。
具体地,本步骤的具体实施方法参照步骤S112。
步骤S115:计算所述实时日志的无变量词结果与所述多个历史日志的无变量词结果之间的相似度的平均值,生成实时日志与每个所述日志类别之间的相似度。
具体地,利用获得的实时日志的无变量词结果以及多个历史日志的无变量词结果之间的相似度,并计算实时日志的无变量结果词结果与多个历史日志的无变量词结果之间的相似度的平均值,其中,将相似度的平均值中的最大值对应的日志类别作为实时日志的归类。
具体地,在本实施例中,可以计算实时日志的无变量词结果与3个历史日志的无变量词结果之间的相似度的平均值,如果该日志类别中的历史日志不足3个,则取全部的历史日志进行计算;需要另外说明的是,并不限定于每个历史类别取3个历史日志,可以取更多的历史日志,以提高实时日志与日志类别之间的相似度计算的准确性。
在上述实施例中,存在的有益效果为:通过计算实时日志与日志模板之间的相似度,提高日志聚类的效果,从而提高日志模板提取的准确性。
参照图3,图3为本申请日志模板提取方法步骤S111的具体实施步骤,所述利用日志分词方法,获得所述实时日志的分词结果,包括:
步骤S1111:获取告警分类词。
具体地,告警分类词可以预先设定的,可以通过历史日志进行学习并获取;可以通过自动导入告警类及其典型日志映射信息表中告警组列进行初始化。
步骤S1112:若所述实时日志中不存在所述告警分类词,则对所述实时日志执行第一次字符串替换操作,生成第一字符串替换结果。
具体地,第一次字符串替换操作可以是对实时日志执行replace(‘.)’,”)”);replace(‘.]’,”]”);replace(‘.}’,”}”)。
在一实施例中,在进行第一次字符串替换操作后,会对第一字符串替换结果进行解析;具体可以是,依次解析第一字符串替换结果中的[]、()、””并分词;可以首先使用正则表达式[.*?]进行分词提取出中括号里面的内容,再对分词结果采用(.*?)进行正则分词提取小括号里的内容,最后对分词结果采用“.*?”进行正则分词提取出双引号里的内容;经过三层解析的过程,获得分词结果中的每一个词;其中,在本实施例中,第一字符串替换结果可以是所述分词结果中的每一个词。
步骤S1113:基于第一设定字符,对所述第一字符串替换结果进行判断。
具体地,第一设定字符可以是[]、()、””;但在此并不限定上述提及的字符;在本实施例中,可以是判断第一字符串替换结果中分词是否为[]或者()或者””包裹的内容。
步骤S1114:若所述第一字符串替换结果中分词的前一个字符以及后一个字符不为所述第一设定字符或者所述第一字符串替换结果中分词的前一个字符以及后一个字符为所述第一设定字符且所述第一字符串替换结果中的分词包含第二设定字符,则对所述分词执行第二次字符串替换操作,生成第二字符串替换结果;利用第二字符串替换结果中的符号进行分词,生成分词列表。
具体地,若第一字符串替换结果中的分词不为第一设定字符包裹的内容或者第一字符串替换结果中的分词是第一设定字符包裹的内容而且第一字符替换结果中的分词包含第二设定字符(在此第二设定字符可以是:或=,但并不限定上述提及的),则对所述分词执行第二次字符串替换操作;其中,在本实施例中,可以执行replace(“,”,“,”);replace(“:”,“,”);replace(“;”,“,”);replace(“.”,“,”);replace(“””,“,”);replace(“.)”,“,”);replace(“.]”,“,”);replace(“[”,“,”);replace(“]”,“,”);replace(“\t”,“,”);replace(“>”,“>,”);replace(“<”,“,<”),但第二次字符串替换操作并不限定与上述提及的字符串替换操作。
其中,第二字符串替换结果中的[,|=;(){}]进行分词,生成分词列表。
步骤S1115:若所述第一字符串替换结果中分词的前一个字符以及后一个字符为所述第一设定字符且所述第一字符串替换结果中的分词不包含第二设定字符,则将所述分词加入至所述分词列表中。
具体地,若第一字符串替换结果中的分词为第一设定字符包裹的内容,且第一字符替换结果中的分词不包含:或者=,则直接将分词加入分词列表中。
步骤S1116:遍历所述分词列表中的分词。
具体地,遍历分词列表中的每一个分词。
步骤S1117:若所述分词不为空字符串且所述分词为关键词,则将所述分词加入重点词表中。
具体地,关键词可以是预先配置的关键词表中的词;若分词不是空字符串且分词为关键词表中的一个时,则将该分词加入到重点词表中。
步骤S1118:若所述分词不为空字符串且所述分词不为关键词,同时所述分词的前缀为告警键前缀词表中的前缀词且除所述分词的前缀外仅包括数字与符号,则将所述分词加入告警键词表中;或者,若所述分词不为空字符串且所述分词不为关键词,同时所述分词为IP地址格式,则将所述分词加入告警键词表中;
具体地,若分词不为空字符串,且分词不是关键词表中的一个,同时该分词的前缀为告警键前缀词表中的前缀词,且除前缀词外仅由数字和符号组成,或者是IP地址格式(由三个.以及数字构成的IP地址格式),则将该分词加入告警键词表中;其中,所述告警键前缀词表中的前缀词可以是“ethernet”、“vlan”、“ge”、“trunk”等等,在此并不作限定。另外,所述告警键前缀词表在匹配使用时不区分大小写。
步骤S1119:生成并返回所述分词列表、所述重点词列表以及所述告警键词表。
具体地,通过步骤S1111-步骤S1118,将分词分别存储至分词列表、重点词列表以及告警键词表中,生成并返回上述三个表。
在上述实施例中,通过两次字符串替换以及两次设定字符的判断,正确的对实时日志进行分词,并返回分词列表、重点词列表以及告警键词表,从而保证日志模板提取的正确性。
参照图4,图4为本申请日志模板提取方法步骤S111的另一具体实施步骤,所述利用日志分词方法,获得所述实时日志的分词结果,还包括:
步骤S1111':以所述告警分类词为界,将所述实时日志分为第一日志以及第二日志;
步骤S1112':递归调用所述日志分词方法,对所述第一日志以及所述第二日志进行分词;
步骤S1113':将所述第一日志的分词结果以及所述第二日志的分词结果进行合并,生成所述实时日志的分词结果。
在本实施例中,以告警分类词为界,将实时日志一分为二,告警分类词之前的部分为第一日志;告警分类词之后的部分为第二日志;递归调用日志分词方法,对第一日志以及第二日志进行分词;将获得的第一日志的分词列表、重点词列表以及告警键词表与获得的第二日志的分词列表、重点词列表以及告警键词表进行合并,生成实时日志的分词结果。
在上述实施例中,存在的有益效果:将实时日志进行细化,并递归调用日志分词方法对细化后的日志进行分词,以提高实时日志分词的准确性。
参照图5,图5为本申请日志模板提取方法步骤S115的具体实施步骤,所述计算所述实时日志的无变量词结果与所述多个历史日志的无变量词结果之间的相似度的平均值,生成实时日志与每个所述日志类别之间的相似度,包括:
步骤S1151:获得所述实时日志的无变量词结果中的重点词列表的第一长度以及所述历史日志的无变量词结果中的重点词列表的第二长度。
步骤S1152:若所述第一长度不等于所述第二长度,则所述实时日志的无变量词结果与所述历史日志的无变量词结果的相似度为零。
步骤S1153:若所述第一长度等于所述第二长度且不为零,同时所述实时日志与所述历史日志的无变量词结果中的重点词列表结果相同且均包含告警分类词,则所述实时日志的无变量词结果与所述历史日志的无变量词结果的相似度为一。
具体地,第一长度与第二长度均不为零,可以是实时日志的无变量词结果中的重点词列表以及历史日志的无变量词结果中的重点词列表均不为空;
具体地,实时日志与所述历史日志的无变量词结果中的重点词列表结果相同可以是实时日志中的无变量词结果中的重点词列表结果与历史日志的无变量词结果中的重点词列表结果一一相同;且均包含告警分类词,在此告警分类词可以预先设定的,可以通过历史日志进行学习并获取;可以通过自动导入告警类及其典型日志映射信息表中告警组列进行初始化。
具体地,在本实施例中,利用对重点词列表进行早停判断,以节省计算时间,以提高相似度计算的效率,从而提高日志模板提取的效率。
步骤S1154:若所述第一长度以及所述第二长度均为零或者所述实时日志与所述历史日志的无变量词结果中的重点词列表结果不相同且均不包含告警分类词,则利用相似度计算公式,基于所述实时日志的无变量词结果中的分词结果列表与所述历史日志的无变量词结果中的分词结果列表的交集、所述实时日志的无变量词结果中的分词结果列表的长度、所述历史日志的无变量词结果中的分词结果列表的长度,计算获得实时日志的无变量词结果与所述历史日志的无变量词结果的相似度。
具体地,在本实施例中,相似度计算公式可以是:
2*实时日志的无变量词结果中的分词结果列表与所述历史日志的无变量词结果中的分词结果列表的交集/(所述实时日志的无变量词结果中的分词结果列表的长度+所述历史日志的无变量词结果中的分词结果列表的长度);但并不限定于上述的相似度计算公式,也可以是其他的相似度计算方法。
步骤S1155:基于所述实时日志的无变量词结果与多个所述历史日志的无变量词结果的相似度,计算获得所述相似度的平均值,生成实时日志与每个所述日志类别之间的相似度。
在上述实施例中,存在的有益效果为:利用重点词列表进行早停判断,以提高相似度计算的效率;同时不可用重点词列表进行早停判断的情况,利用相似度计算公式进行相似度的计算,则保证相似度计算的全面性以及准确性。
参照图6,图6为本申请日志模板提取方法第一实施例中步骤S120的具体实施步骤,所述基于所述相似度,将所述实时日志归类至对应的所述日志类别中,生成更新后的日志类别,包括:
步骤S121:若所述相似度低于相似度阈值,则将所述实时日志作为新类别加入日志类别并生成新类别更新信息。
具体地,在本实施例中,相似度阈值可以为0.6,但并不限定于上述值,可以根据具体的业务需求进行调整。
步骤S122:若所述相似度高于相似度阈值且所述相似度的最大值对应的日志类别中的历史日志数量小于数量阈值,则将所述实时日志归类至所述相似度的最大值对应的日志类别。
具体地,数量阈值可以为10,但并不限定于上述值,可以根据具体的业务需求进行调整。
步骤S123:若所述相似度高于相似度阈值且所述相似度的最大值对应的日志类别中的历史日志数量大于或者等于数量阈值,同时在时间阈值内未监测到所述新类别更新信息,则停止日志类别的生成操作。
具体地,时间阈值可以是1分钟,也可以其他的时间值,在此并不作限定。
在上述实施例中,存在的有益效果为:通过对相似度阈值、数量阈值以及时间阈值的判断,对实时日志进行归类,保证实时日志的聚类正确。
参照图7,图7为本申请日志模板提取方法第一实施例中步骤S130的具体实施步骤,所述对所述更新后的日志类别中的日志进行模板提取,获得日志模板,包括:
步骤S131:获得所述更新后的日志类别中分词数量最多的日志作为参考日志。
具体地,将日志类别中的每个日志利用日志分词方法进行分词操作,获得分词数量,以分词数量最多的日志作为参考日志。
步骤S132:获得所述参考日志的分词结果,遍历所述参考日志的分词结果中的分词列表。
步骤S133:若所述分词为变量词,则对所述变量词进行标记。
具体地,利用变量词判定方法,对分词进行判断,对属于变量词的分词进行标记。
步骤S134:若所述分词不为变量词,且所述分词存在于所述日志类别中其他日志中,则将所述变量词标记为关键词。
具体地,若分词不为变量词,且分词存在于所述日志类别中其他日志中可以是分词存在于所述日志类别中其他日志的任何一个日志中,则将变量词标记为关键词。
步骤S135:基于所述参考日志、所述分词结果、所述变量词标记以及所述关键词,生成所述日志模板。
具体地,利用上述操作生成的参考日志、分词结果、变量词标记以及关键词,则可以生成日志模板。
上述实施例中,存在的有益效果为:通过对实时日志归类后产生的更新后的日志类别中的日志进行模板提取,提高日志模板提取的正确性。
本申请还保护一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实上述任一所述的日志模板提取方法的步骤。
本申请还保护一种计算机存储介质,所述计算机存储介质上存储有日志模板提取方法程序,所述日志模板提取方法程序被处理器执行实现上述任一所述的日志模板提取方法的步骤。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
应当注意的是,在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的部件或步骤。位于部件之前的单词“一”或“一个”不排除存在多个这样的部件。本发明可以借助于包括有若干不同部件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (10)
1.一种日志模板提取方法,其特征在于,所述方法包括:
获取实时日志,基于日志聚类文本相似性算法,获得实时日志与日志类别之间的相似度;
基于所述相似度,将所述实时日志归类至对应的所述日志类别中,生成更新后的日志类别;
对所述更新后的日志类别中的日志进行模板提取,获得日志模板。
2.如权利要求1所述的日志模板提取方法,其特征在于,所述获取实时日志,基于日志聚类文本相似性算法,获得实时日志与日志类别之间的相似度,包括:
利用日志分词方法,获得所述实时日志的分词结果;
利用变量词判定方法将所述实时日志的分词结果中的变量词去除,生成实时日志的无变量词结果;
获得每个日志类别中多个历史日志的分词结果;
利用变量词判定方法将所述多个历史日志的分词结果中的变量词去除,生成多个历史日志的无变量词结果;
计算所述实时日志的无变量词结果与所述多个历史日志的无变量词结果之间的相似度的平均值,生成实时日志与每个所述日志类别之间的相似度。
3.如权利要求2所述的日志模板提取方法,其特征在于,所述利用日志分词方法,获得所述实时日志的分词结果,包括:
获取告警分类词;
若所述实时日志中不存在所述告警分类词,则对所述实时日志执行第一次字符串替换操作,生成第一字符串替换结果;
基于第一设定字符,对所述第一字符串替换结果进行判断;
若所述第一字符串替换结果中分词的前一个字符以及后一个字符不为所述第一设定字符或者所述第一字符串替换结果中分词的前一个字符以及后一个字符为所述第一设定字符且所述第一字符串替换结果中的分词包含第二设定字符,则对所述分词执行第二次字符串替换操作,生成第二字符串替换结果;利用第二字符串替换结果中的符号进行分词,生成分词列表;
若所述第一字符串替换结果中分词的前一个字符以及后一个字符为所述第一设定字符且所述第一字符串替换结果中的分词不包含第二设定字符,则将所述分词加入至所述分词列表中;
遍历所述分词列表中的分词;
若所述分词不为空字符串且所述分词为关键词,则将所述分词加入重点词表中;
若所述分词不为空字符串且所述分词不为关键词,同时所述分词的前缀为告警键前缀词表中的前缀词且除所述分词的前缀外仅包括数字与符号,则将所述分词加入告警键词表中;或者,若所述分词不为空字符串且所述分词不为关键词,同时所述分词为IP地址格式,则将所述分词加入告警键词表中;
生成并返回所述分词列表、所述重点词列表以及所述告警键词表。
4.如权利要求3所述的日志模板提取方法,其特征在于,所述利用日志分词方法,获得所述实时日志的分词结果,还包括:
以所述告警分类词为界,将所述实时日志分为第一日志以及第二日志;
递归调用所述日志分词方法,对所述第一日志以及所述第二日志进行分词;
将所述第一日志的分词结果以及所述第二日志的分词结果进行合并,生成所述实时日志的分词结果。
5.如权利要求2所述的日志模板提取方法,其特征在于,所述计算所述实时日志的无变量词结果与所述多个历史日志的无变量词结果之间的相似度的平均值,生成实时日志与每个所述日志类别之间的相似度,包括:
获得所述实时日志的无变量词结果中的重点词列表的第一长度以及所述历史日志的无变量词结果中的重点词列表的第二长度;
若所述第一长度不等于所述第二长度,则所述实时日志的无变量词结果与所述历史日志的无变量词结果的相似度为零;
若所述第一长度等于所述第二长度且不为零,同时所述实时日志与所述历史日志的无变量词结果中的重点词列表结果相同且均包含告警分类词,则所述实时日志的无变量词结果与所述历史日志的无变量词结果的相似度为一;
若所述第一长度以及所述第二长度均为零或者所述实时日志与所述历史日志的无变量词结果中的重点词列表结果不相同且均不包含告警分类词,则利用相似度计算公式,基于所述实时日志的无变量词结果中的分词结果列表与所述历史日志的无变量词结果中的分词结果列表的交集、所述实时日志的无变量词结果中的分词结果列表的长度、所述历史日志的无变量词结果中的分词结果列表的长度,计算获得实时日志的无变量词结果与所述历史日志的无变量词结果的相似度;
基于所述实时日志的无变量词结果与多个所述历史日志的无变量词结果的相似度,计算获得所述相似度的平均值,生成实时日志与每个所述日志类别之间的相似度。
6.如权利要求1所述的日志模板提取方法,其特征在于,所述基于所述相似度,将所述实时日志归类至对应的所述日志类别中,生成更新后的日志类别,包括:
若所述相似度低于相似度阈值,则将所述实时日志作为新类别加入日志类别并生成新类别更新信息;
若所述相似度高于相似度阈值且所述相似度的最大值对应的日志类别中的历史日志数量小于数量阈值,则将所述实时日志归类至所述相似度的最大值对应的日志类别。
7.如权利要求6所述的日志模板提取方法,其特征在于,所述基于所述相似度,将所述实时日志归类至对应的所述日志类别中,生成更新后的日志类别,还包括:
若所述相似度高于相似度阈值且所述相似度的最大值对应的日志类别中的历史日志数量大于或者等于数量阈值,同时在时间阈值内未监测到所述新类别更新信息,则停止日志类别的更新操作。
8.如权利要求1所述的日志模板提取方法,其特征在于,所述对所述更新后的日志类别中的日志进行模板提取,获得日志模板,包括:
获得所述更新后的日志类别中分词数量最多的日志作为参考日志;
获得所述参考日志的分词结果,遍历所述参考日志的分词结果中的分词列表;
若所述分词为变量词,则对所述变量词进行标记;
若所述分词不为变量词,且所述分词存在于所述日志类别中其他日志中,则将所述变量词标记为关键词;
基于所述参考日志、所述分词结果、所述变量词标记以及所述关键词,生成所述日志模板。
9.一种计算机程序产品,其特征在于,包括计算机程序,所述计算机程序被处理器执行时实现权利要求1-8任一所述的日志模板提取方法的步骤。
10.一种计算机存储介质,其特征在于,所述计算机存储介质上存储有日志模板提取方法程序,所述日志模板提取方法程序被处理器执行时实现权利要求1-8任一所述的日志模板提取方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110855197.7A CN113590421B (zh) | 2021-07-27 | 2021-07-27 | 日志模板提取方法、程序产品及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110855197.7A CN113590421B (zh) | 2021-07-27 | 2021-07-27 | 日志模板提取方法、程序产品及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113590421A true CN113590421A (zh) | 2021-11-02 |
CN113590421B CN113590421B (zh) | 2024-04-26 |
Family
ID=78250988
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110855197.7A Active CN113590421B (zh) | 2021-07-27 | 2021-07-27 | 日志模板提取方法、程序产品及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113590421B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115221013A (zh) * | 2022-09-21 | 2022-10-21 | 云智慧(北京)科技有限公司 | 一种日志模式的确定方法、装置及设备 |
CN116166501A (zh) * | 2023-02-03 | 2023-05-26 | 上海擎创信息技术有限公司 | 一种日志校验方法、装置、电子设备及存储介质 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105049247A (zh) * | 2015-07-06 | 2015-11-11 | 中国科学院信息工程研究所 | 一种网络安全日志模板抽取方法及装置 |
CN109981625A (zh) * | 2019-03-18 | 2019-07-05 | 中国人民解放军陆军炮兵防空兵学院郑州校区 | 一种基于在线层次聚类的日志模板抽取方法 |
CN110879802A (zh) * | 2019-10-28 | 2020-03-13 | 同济大学 | 一种日志模式提取及匹配方法 |
CN110888849A (zh) * | 2019-11-06 | 2020-03-17 | 国网上海市电力公司 | 一种在线日志解析方法、系统及其电子终端设备 |
CN111400500A (zh) * | 2020-03-25 | 2020-07-10 | 上海擎创信息技术有限公司 | 一种基于LCS的Chameleon实时日志聚类方法 |
CN112463933A (zh) * | 2020-12-14 | 2021-03-09 | 清华大学 | 系统日志模板的在线提取方法和装置 |
CN112560407A (zh) * | 2020-12-18 | 2021-03-26 | 上海中畅数据技术有限公司 | 一种在线提取计算机软件日志模板的方法 |
CN112579707A (zh) * | 2020-12-08 | 2021-03-30 | 西安邮电大学 | 一种日志数据的知识图谱构建方法 |
CN112732655A (zh) * | 2021-01-13 | 2021-04-30 | 北京六方云信息技术有限公司 | 针对无格式日志的在线解析方法及系统 |
-
2021
- 2021-07-27 CN CN202110855197.7A patent/CN113590421B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105049247A (zh) * | 2015-07-06 | 2015-11-11 | 中国科学院信息工程研究所 | 一种网络安全日志模板抽取方法及装置 |
CN109981625A (zh) * | 2019-03-18 | 2019-07-05 | 中国人民解放军陆军炮兵防空兵学院郑州校区 | 一种基于在线层次聚类的日志模板抽取方法 |
CN110879802A (zh) * | 2019-10-28 | 2020-03-13 | 同济大学 | 一种日志模式提取及匹配方法 |
CN110888849A (zh) * | 2019-11-06 | 2020-03-17 | 国网上海市电力公司 | 一种在线日志解析方法、系统及其电子终端设备 |
CN111400500A (zh) * | 2020-03-25 | 2020-07-10 | 上海擎创信息技术有限公司 | 一种基于LCS的Chameleon实时日志聚类方法 |
CN112579707A (zh) * | 2020-12-08 | 2021-03-30 | 西安邮电大学 | 一种日志数据的知识图谱构建方法 |
CN112463933A (zh) * | 2020-12-14 | 2021-03-09 | 清华大学 | 系统日志模板的在线提取方法和装置 |
CN112560407A (zh) * | 2020-12-18 | 2021-03-26 | 上海中畅数据技术有限公司 | 一种在线提取计算机软件日志模板的方法 |
CN112732655A (zh) * | 2021-01-13 | 2021-04-30 | 北京六方云信息技术有限公司 | 针对无格式日志的在线解析方法及系统 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115221013A (zh) * | 2022-09-21 | 2022-10-21 | 云智慧(北京)科技有限公司 | 一种日志模式的确定方法、装置及设备 |
CN116166501A (zh) * | 2023-02-03 | 2023-05-26 | 上海擎创信息技术有限公司 | 一种日志校验方法、装置、电子设备及存储介质 |
CN116166501B (zh) * | 2023-02-03 | 2024-03-08 | 上海擎创信息技术有限公司 | 一种日志校验方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113590421B (zh) | 2024-04-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110245496B (zh) | 一种源代码漏洞检测方法及检测器和其训练方法及系统 | |
CN106095996B (zh) | 用于文本分类的方法 | |
CN107566376B (zh) | 一种威胁情报生成方法、装置及系统 | |
US9323839B2 (en) | Classification rule generation device, classification rule generation method, classification rule generation program, and recording medium | |
CN109981625B (zh) | 一种基于在线层次聚类的日志模板抽取方法 | |
TWI689825B (zh) | 一種文件品質指標獲取方法及裝置 | |
CN113590421B (zh) | 日志模板提取方法、程序产品及存储介质 | |
CN103336766A (zh) | 短文本垃圾识别以及建模方法和装置 | |
CN109194677A (zh) | 一种sql注入攻击检测方法、装置及设备 | |
CN107004141A (zh) | 对大样本组的高效标注 | |
CN107688563B (zh) | 一种同义词的识别方法及识别装置 | |
CN115146062A (zh) | 融合专家推荐与文本聚类的智能事件分析方法和系统 | |
CN105335446A (zh) | 一种基于词矢量的短文本分类模型生成方法与分类方法 | |
CN112464036B (zh) | 一种违规数据的审核方法及装置 | |
CN108462624A (zh) | 一种垃圾邮件的识别方法、装置以及电子设备 | |
CN105354224B (zh) | 知识数据的处理方法和装置 | |
CN110738047A (zh) | 基于图文数据与时间效应的微博用户兴趣挖掘方法及系统 | |
CN113360603A (zh) | 一种合同相似性及合规性检测方法及装置 | |
CN107688594B (zh) | 基于社交信息的风险事件的识别系统及方法 | |
CN110929506A (zh) | 一种垃圾信息检测方法、装置、设备及可读存储介质 | |
CN109933784A (zh) | 一种文本识别方法和装置 | |
CN111651987B (zh) | 身份判别方法及装置、计算机可读存储介质、电子设备 | |
CN106933797B (zh) | 目标信息的生成方法及装置 | |
CN110633466B (zh) | 基于语义分析的短信犯罪识别方法、系统和可读存储介质 | |
CN107436895B (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 |