CN106339293A - 一种基于签名的日志事件提取方法 - Google Patents
一种基于签名的日志事件提取方法 Download PDFInfo
- Publication number
- CN106339293A CN106339293A CN201610696024.4A CN201610696024A CN106339293A CN 106339293 A CN106339293 A CN 106339293A CN 201610696024 A CN201610696024 A CN 201610696024A CN 106339293 A CN106339293 A CN 106339293A
- Authority
- CN
- China
- Prior art keywords
- packet
- daily record
- signature
- word
- record data
- 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
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
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3006—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is distributed, e.g. networked systems, clusters, multiprocessor systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Mathematical Physics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种基于签名的日志事件提取方法,由聚类过程、统计检验、迭代过程组成,聚类过程是根据匹配分数将一个数据集合划分为两个分组,并得到两个分组的签名;统计检验过程是根据聚类过程的分组结果以及Anderson‑Darling统计量检验划分是否满足正态分布,判断是否接受分组;迭代过程是对当前未经过聚类过程的分组重复聚类过程和统计检验过程,直至所有分组都不再变化,确定方法的结束条件。本发明针对日志文本的特点,基于签名的方式来对日志文本进行归类,实现日志事件的提取,具有日志事件提取准确率高的特点。
Description
技术领域
本发明涉及一种日志事件提取方法,特别是一种基于签名的日志事件提取方法。
背景技术
随着计算系统的架构不断复杂,规模不断扩大,庞大的信息系统产生大量的日志和系统事件数据记录系统的运行状态。应用数据挖掘技术针对这些海量日志和系统事件进行分析,能够有效地帮助系统管理员进行系统维护。
系统日志和时间的数据存储形式主要有两类。一类是结构化或半结构化的日志事件数据,例如Windows Event Logs、数据库历史查询记录日至等,每条数据库记录代表一个日志或者事件,每条记录会将该日志时间的各个属性分开存储到表的各个字段内,如日志产生时间、机器名、进程名、错误代码、异常详细描述等。另一类是无结构的日志数据,多为日志文件,常见的Linux日志、Hadoop日志等的日志数据都是记录在一个单纯的文本日志文件中,每条日志或者事件都已一条文本消息或者短文的形式存储在日志文件内。很多数据挖掘的分析算法都是建立在结构化的事件上,但是很多日志数据都是半结构或者无结构的文本,因此需要从日志文件中提取出日志事件。
最直接的方法是采用日志解析器,但是各个系统的日志格式结构都不相同,无法为每一个系统实现特定的日志解析器;在许多事件挖掘的应用中,往往只需要识别事件类型,可以采用基于分类的方法,主要缺点是分类算法要求用户提供事先标记的训练数据,耗时并且代价昂贵;Makanju和Aharon分别提出聚类算法将文本日志转化为各种不同类型的事件,这两种方法依赖于日志文件的格式结构,对于日志文本的一致性要求太高,如果两个日志文本长度不一样或者细节有些变化,都将日志文本归为不同类别。
发明内容
本发明的目的在于解决传统方法依赖日志文件格式结构,对于日志文件一致性要求过高的问题,提出一种基于签名的日志事件提取方法。
实现本发明目的的技术方案为:一种基于签名的日志事件提取方法,包括:
步骤1,聚类过程:将日志集合D随机划分为两个分组,确定日志集合D中词对的整体包含程度Φ(D),根据日志集合中日志数据从一个分组移动至另一个分组时Φ(D)的增量对分组进行更新,得到最优的两个分组以及两个分组的签名;
步骤2,统计检验过程:根据Anderson-Darling统计量,判断日志集合是否满足正态分布,若不满足,接受步骤1的分组,替换原分组;反之,维持原分组,步骤1的分组舍弃;
步骤3,迭代过程:选择当前未进行聚类的分组重复步骤1、步骤2,直至所有的分组均满足正态分布,分组不再变化,各个分组的签名即为提取出来的日志事件。
与现有技术相比,本发明的显著优点为:
(1)本发明针对日志文本的特点,基于签名的方式来进行归类,这里的签名可以看成是一类日志事件最具特色的短语结构,日志文本通常很短,如果出现签名,就能足够准确地将该日志文件进行分类,不依赖日志文件的格式结构,对于日志文件的一致性没有要求;
(2)本发明解决了传统方法依赖日志文件格式结构,对于日志文件一致性要求过高的问题,具有日志事件提取准确率高的特点。
附图说明
图1是本发明基于签名的日志事件提取方法的流程图。
具体实施方式
下面结合附图对本发明作进一步详细描述。
结合图1,本发明提出了一种基于签名的日志事件提取方法,包括聚类过程、统计检验过程、迭代过程,具体为:
步骤1,聚类过程:将日志集合D随机划分为两个分组,确定日志集合D中词对的整体包含程度Φ(D),根据日志集合中日志数据从一个分组移动至另一个分组时Φ(D)的增量对分组进行更新,得到最优的两个分组以及两个分组的签名;具体包括以下步骤:
步骤1-1,将日志集合D中的日志数据随机划分为两个分组,即第一分组C1和第二分组C2;
步骤1-2,分别计算第一分组和第二分组词对的整体包含程度:
对于给定的一个分组C,R(C)表示分组中词对的并集集合,|C|表示该分组中的日志数据的数目,对于R(C)中的任一词对r,N(r,C)表示在分组C中包含该词对r的日志数据的数目,p(r,C)表示分组C中包含词对r的日志数据所占的比例,即定义Φ(C)为分组C中词对的整体包含程度,即
根据如上定义分别计算Φ(C1)和Φ(C2);
步骤1-3,对于日志集合D有
其中i=1,2,Φ(D)表示日志集合D中词对的整体包含程度;
令表示日志集合D中的一条日志数据X从分组Ci移动到分组Cj时Φ(D)的增量,其中i,j=1,2,i≠j,即定义如下:
其中,{X}表示日志数据X的集合;
对于任一日志数据X计算得到最大值时的j值,将日志数据X从分组Ci移动到分组Cj,更新分组;重复此步骤,直至分组不再变化,得到最优的第一分组C1和第二分组C2;
步骤1-4,分别选择最优的两个分组中出现次数至少为|C|/2的单词构成第一集合S1和第二集合S2,即为第一分组C1和第二分组C2的签名。
步骤2,统计检验过程:根据Anderson-Darling统计量,判断日志集合是否满足正态分布,若不满足,接受步骤1的分组,替换原分组;反之,维持原分组,步骤1的分组舍弃;具体包括以下步骤:
给定一条日志数据X和一个分组签名S,LCS(X,S)表示X和S的最长公共子串,则二者的匹配分数match(X,S)计算如下:
match(X,S)=|LCS(X,S)|-(|S|-|LCS(X,S)|)=2|LCS(X,S)|-|S|
式中,|S|表示签名S中的单词数,|LCS(X,S)|表示最长公共字串的单词数;
步骤2-1、记签名S1和S2中不同单词的集合cus=S1∪S2-S1∩S2,计算xp=match(Xp,S)/cus,zp=F(xp),这里是正态分布的累计分布函数;Xp∈D,Xp是D中的一条日志数据,1≤p≤n,n为日志集合D中日志数据的数量;
步骤2-2、根据Anderson-Darling统计量分别计算
步骤2-3、比较A2(Z)和如果大于A2(Z),则表示不满足正态分布,接受步骤1的分组,替换原分组;反之,则表示满足正态分布,维持原分组,步骤1的分组舍弃。
步骤3,迭代过程:选择当前未进行聚类的分组重复步骤1、步骤2,直至所有的分组均满足正态分布,分组不再变化,各个分组的签名即为提取出来的日志事件。
下面结合具体实施例对本发明作进一步说明。
实施例
给定一个日志集合D={"Command:mkdir'lib1'","Error:Err 404","Command:mkdir'lib3'","Error:Err 500","Error:Err 502","Command:mkdir'lib2'","Error:Err403"}共包含7条日志数据。
将日志集合D随机划分为两个分组C1={"Command:mkdir'lib1'","Error:Err404","Command:mkdir'lib3'","Error:Err 500",},C2={"Error:Err 502","Command:mkdir'lib2'","Error:Err 403"},执行步骤一,这里以分组C1中的"Command:mkdir'lib1'"为例,将此日志数据从分组C1,移动到分组C2后,词对整体包含程度增量为-0.26389,增量小于零,所以该日志数据位于分组C1中为最优。分别对D中的每条日志数据,从当前分组移动到另一个分组,计算词对整体包含程度增量并比较,得到最优分组为C1={"Command:mkdir'lib1'","Command:mkdir'lib3'","Command:mkdir'lib2'"},C2={"Error:Err 502","Error:Err 404","Error:Err 500","Error:Err 403"},此时两个分组的签名分别为S1={"Command:","mkdir"},S2={"Error:","Err"}。
执行步骤2,此时cus=S1∪S2-S1∩S2={"Command:","mkdir","Error:","Err"},然后计算得到A2(Z)=2.9960,因为大于A2(Z),所以接受分组C1和C2。
接下来对分组C1执行步骤1和步骤2,计算得到A2(Z)=2.0879,因为小于A2(Z),所以舍弃步骤1分组,维持分组C1。同理,对分组C2执行步骤1和步骤2,计算得到A2(Z)=7.8978,因为小于A2(Z),所以舍弃步骤1分组,维持分组C2。
至此所有分组都已进行过聚类过程,且分组没有发生变化,这时的分组即为最优结果,分组的签名就是提取出的日志事件,即日志事件为:Command:mkdir和Error:Err。
Claims (3)
1.一种基于签名的日志事件提取方法,其特征在于,包括:
步骤1,聚类过程:将日志集合D随机划分为两个分组,确定日志集合D中词对的整体包含程度Φ(D),根据日志集合中日志数据从一个分组移动至另一个分组时Φ(D)的增量对分组进行更新,得到最优的两个分组以及两个分组的签名;
步骤2,统计检验过程:根据Anderson-Darling统计量,判断日志集合是否满足正态分布,若不满足,接受步骤1的分组,替换原分组;反之,维持原分组,步骤1的分组舍弃;
步骤3,迭代过程:选择当前未进行聚类的分组重复步骤1、步骤2,直至所有的分组均满足正态分布,分组不再变化,各个分组的签名即为提取出来的日志事件。
2.根据权利要求1所述的基于签名的日志事件提取方法,其特征在于,聚类过程包括以下步骤:
步骤1-1,将日志集合D中的日志数据随机划分为两个分组,即第一分组C1和第二分组C2;
步骤1-2,分别计算第一分组和第二分组词对的整体包含程度:
对于给定的一个分组C,R(C)表示分组中词对的并集集合,|C|表示该分组中的日志数据的数目,对于R(C)中的任一词对r,N(r,C)表示在分组C中包含该词对r的日志数据的数目,p(r,C)表示分组C中包含词对r的日志数据所占的比例,即定义Φ(C)为分组C中词对的整体包含程度,即
根据如上定义分别计算Φ(C1)和Φ(C2);
步骤1-3,对于日志集合D有
其中i=1,2,Φ(D)表示日志集合D中词对的整体包含程度;
令表示日志集合D中的一条日志数据X从分组Ci移动到分组Cj时Φ(D)的增量,其中i,j=1,2,i≠j,即定义如下:
其中,{X}表示日志数据X的集合;
对于任一日志数据X计算得到最大值时的j值,将日志数据X从分组Ci移动到分组Cj,更新分组;重复此步骤,直至分组不再变化,得到最优的第一分组C1和第二分组C2;
步骤1-4,分别选择最优的两个分组中出现次数至少为|C|/2的单词构成第一集合S1和第二集合S2,即为第一分组C1和第二分组C2的签名。
3.根据权利要求1所述的基于签名的日志事件提取方法,其特征在于,统计检验过程包括以下步骤:
给定一条日志数据X和一个分组签名S,LCS(X,S)表示X和S的最长公共子串,则二者的匹配分数match(X,S)计算如下:
match(X,S)=|LCS(X,S)|-(|S|-|LCS(X,S)|)=2|LCS(X,S)|-|S|
式中,|S|表示签名S中的单词数,|LCS(X,S)|表示最长公共字串的单词数;
步骤2-1、记签名S1和S2中不同单词的集合cus=S1∪S2-S1∩S2,计算xp=match(Xp,S)/cus,zp=F(xp),这里是正态分布的累计分布函数;Xp∈D,Xp是D中的一条日志数据,1≤p≤n,n为日志集合D中日志数据的数量;
步骤2-2、根据Anderson-Darling统计量分别计算
步骤2-3、比较A2(Z)和如果大于A2(Z),则表示不满足正态分布,接受步骤1的分组,替换原分组;反之,则表示满足正态分布,维持原分组,步骤1的分组舍弃。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610696024.4A CN106339293B (zh) | 2016-08-20 | 2016-08-20 | 一种基于签名的日志事件提取方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610696024.4A CN106339293B (zh) | 2016-08-20 | 2016-08-20 | 一种基于签名的日志事件提取方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106339293A true CN106339293A (zh) | 2017-01-18 |
CN106339293B CN106339293B (zh) | 2019-04-12 |
Family
ID=57825365
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610696024.4A Active CN106339293B (zh) | 2016-08-20 | 2016-08-20 | 一种基于签名的日志事件提取方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106339293B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110347827A (zh) * | 2019-06-26 | 2019-10-18 | 南京理工大学 | 面向异构文本运维数据的事件提取方法 |
CN110888849A (zh) * | 2019-11-06 | 2020-03-17 | 国网上海市电力公司 | 一种在线日志解析方法、系统及其电子终端设备 |
CN111177360A (zh) * | 2019-12-16 | 2020-05-19 | 中国电子科技网络信息安全有限公司 | 一种基于云上用户日志的自适应过滤方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102254004A (zh) * | 2011-07-14 | 2011-11-23 | 北京邮电大学 | 一种网络日志挖掘中的Web建模方法及系统 |
CN103744890A (zh) * | 2013-12-23 | 2014-04-23 | 清华大学 | 日志分离方法及装置 |
US20140164376A1 (en) * | 2012-12-06 | 2014-06-12 | Microsoft Corporation | Hierarchical string clustering on diagnostic logs |
CN105631025A (zh) * | 2015-12-29 | 2016-06-01 | 腾讯科技(深圳)有限公司 | 一种查询标签的归一化处理方法和装置 |
-
2016
- 2016-08-20 CN CN201610696024.4A patent/CN106339293B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102254004A (zh) * | 2011-07-14 | 2011-11-23 | 北京邮电大学 | 一种网络日志挖掘中的Web建模方法及系统 |
US20140164376A1 (en) * | 2012-12-06 | 2014-06-12 | Microsoft Corporation | Hierarchical string clustering on diagnostic logs |
CN103744890A (zh) * | 2013-12-23 | 2014-04-23 | 清华大学 | 日志分离方法及装置 |
CN105631025A (zh) * | 2015-12-29 | 2016-06-01 | 腾讯科技(深圳)有限公司 | 一种查询标签的归一化处理方法和装置 |
Non-Patent Citations (2)
Title |
---|
JL ROMEU ET.AL: "Anderson-Darling:A Goodness of Fit Test for small Samples Assumptions", 《START》 * |
LIANG TANG ET.AL: "LogSig:Generating system events from raw textual logs", 《ACM CONFERENCE ON INFORMATION AND KNOWLEDGE MANAGEMENT》 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110347827A (zh) * | 2019-06-26 | 2019-10-18 | 南京理工大学 | 面向异构文本运维数据的事件提取方法 |
CN110347827B (zh) * | 2019-06-26 | 2023-08-22 | 南京理工大学 | 面向异构文本运维数据的事件提取方法 |
CN110888849A (zh) * | 2019-11-06 | 2020-03-17 | 国网上海市电力公司 | 一种在线日志解析方法、系统及其电子终端设备 |
CN110888849B (zh) * | 2019-11-06 | 2022-07-22 | 国网上海市电力公司 | 一种在线日志解析方法、系统及其电子终端设备 |
CN111177360A (zh) * | 2019-12-16 | 2020-05-19 | 中国电子科技网络信息安全有限公司 | 一种基于云上用户日志的自适应过滤方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN106339293B (zh) | 2019-04-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104391942B (zh) | 基于语义图谱的短文本特征扩展方法 | |
CN102411563B (zh) | 一种识别目标词的方法、装置及系统 | |
Broström et al. | Generalized linear models with clustered data: Fixed and random effects models | |
CN104050196B (zh) | 一种兴趣点数据冗余检测方法及装置 | |
CN106156145A (zh) | 一种地址数据的管理方法和装置 | |
CN106776538A (zh) | 企业非标准格式文档的信息提取方法 | |
CN104216876B (zh) | 信息文本过滤方法及系统 | |
CN103703459A (zh) | 基于字符变换和无监督网络数据的文本消息规格化方法和系统 | |
CN107145523B (zh) | 基于迭代匹配的大型异构知识库对齐方法 | |
CN103324666A (zh) | 一种基于微博数据的话题跟踪方法及装置 | |
CN104063502A (zh) | 一种基于语义模型的wsdl半结构化文档相似性分析及分类方法 | |
CN101989289A (zh) | 数据聚类方法和装置 | |
Pit-Claudel et al. | Outlier detection in heterogeneous datasets using automatic tuple expansion | |
CN104346408A (zh) | 一种对网络用户进行标注的方法与设备 | |
CN104731958A (zh) | 一种面向用户需求倾向的云制造服务推荐方法 | |
CN111242218B (zh) | 融合用户多属性信息的跨社交网络用户身份识别方法 | |
CN100543735C (zh) | 基于文档结构的文档相似性度量方法 | |
CN104866558A (zh) | 一种社交网络账号映射模型训练方法及映射方法和系统 | |
CN106339293A (zh) | 一种基于签名的日志事件提取方法 | |
CN102880631A (zh) | 一种基于双层分类模型的中文作者识别方法及其装置 | |
CN103559199A (zh) | 网页信息抽取方法和装置 | |
CN109977383A (zh) | 一种基于Excel的表单信息提取方法 | |
CN103530316A (zh) | 一种基于多视图学习的科学主题提取方法 | |
CN103150383A (zh) | 一种短文本数据的事件演化分析方法 | |
CN103268346A (zh) | 半监督分类方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |