基于日志工作流挖掘的分布式系统异常检测方法

文档序号:35094783发布日期:2023-08-10 04:18阅读:38来源:国知局
基于日志工作流挖掘的分布式系统异常检测方法

本发明属于信息安全,进一步涉及异常检测方法,具体为一种基于日志工作流挖掘的分布式系统异常检测方法,可用于主流分布式系统的异常检测和识别。


背景技术:

1、分布式系统能够动态分布任务并进行全局管理,具有极高的容错性、可扩展性和资源共享性,广泛运用于云计算等平台,服务于众多大数据应用平台。计算需求的增加促使分布式系统进行任务协调的计算机节点数量呈现大幅度增加,并且分布式系统具有复杂的系统结构和功能,这将直接导致分布式系统异常和故障发生概率的显著增加,一旦系统出现异常,将会给服务商以及客户带来巨大的损失。其中分布式系统的下述特征是导致分布式系统产生异常普遍原因:①分布式通信协议多种多样,计算需求庞大。分布式系统并行处理海量任务,庞大的计算需求导致通信方式的多样化,同时对分布式系统的数据处理能力带来巨大的压力,节点之间存在一定的通信错误与数据丢失现象。②分布式系统计算节点数量庞大。大量的计算节点在复杂的任务执行过程中出现故障的概率增大,表现为分布式系统服务器节点出现宕机和“僵死”现象。③分布式系统架构复杂,组件种类繁多。复杂的功能导致分布式系统的架构变得复杂,并且需要众多的组件支持相应的分布式服务,大量的计算节点之间资源共享,一旦组件或节点之间存在安全漏洞,非常容易被黑客攻击导致分布式系统瘫痪和数据泄露。

2、异常检测技术是能够保证系统安全的关键一步,在大多数异常检测技术当中,系统日志被广泛应用于异常检测当中,其主要原因是系统的日志记录了系统执行流程、系统状态信息以及各种突发事件的记录等能够为异常检测提供信息来源的重要数据。现阶段的研究方法为了缩小低等级的日志和上层人类可理解的图表及语言之间的差异,采用构造工作流的方式来对系统运行状况进行建模,其中系统日志是构造工作流的重要数据来源。然而目前通过分析分布式系统日志进行异常检测还存在一些难点,首先分布式系统产生的日志体量庞大,甚至达到每小时吉比特字节的数据,其次分布式系统不同的组件设备之间产生的日志涉及不同方面的信息,产生的非结构化日志具有多样性的特点,此外分布式系统的资源共享性导致分布式系统产生的日志分散难以进行处理,这些都给异常检测带来了巨大的困难。


技术实现思路

1、本发明目的在于针对上述现有技术的不足,提出一种基于日志工作流挖掘的分布式系统异常检测方法,解决现有技术针对海量非结构化日志解析难、利用难、异常检测无法利用日志之间存在的空间特征等问题。本发明能够利用工作流图挖掘分布式系统日志间的信息空间结构,有效提高分布式系统日志异常检测的准确率。

2、实现本发明方案的思路是:首先通过日志解析提取出日志中事件的模板,并挖掘日志事件之间的时序关系;然后通过将分布式系统日志提取构造工作流图,利用时序关系对图模型检查,再将事件转移时间转化为时间向量作为图中边的权重,接着对子图进行融合,实现对分布式系统的状态和执行轨迹的准确反映;最后通过图卷积神经网络对工作流图的信息空间结构以及节点特征和图结构信息进行提取和训练,最终实现工作流图的异常检测。

3、本发明实现上述目的具体步骤如下:

4、(1)对分布式系统产生的日志进行解析,将非结构化日志转化为结构化日志,提取日志事件模板;

5、(2)基于线性时态逻辑ltl挖掘系统运行过程中事件之间的时序关系,即时间不变量;

6、(3)对结构化的分布式系统日志构造工作流图,实现如下:

7、(3.1)对经过解析的结构化日志构造单进程的有限状态机fsm模型:

8、将系统日志中存在的多个并行任务称为轨迹,每个轨迹中不同对象具有不同的进程,设一篇系统日志l由h个进程生成,分别对这些进程构造有限状态机模型,得到第i个进程pi对应的有机状态机fi:

9、fi=<qi,ei,δi>,

10、其中,i=1,2,...,h,qi表示输入日志构造的有限状态机fi中所有状态的集合,ei表示进程pi中所有事件实例的集合,δi表示进程pi的转化函数;

11、(3.2)提取进程之间的通道,通过进程之间发送和接收信息的途径使进程之间产生交互,利用进程间的通道对每个进程对应的有机状态机进行整合,生成fsm模型f:

12、f=<q,e,δ,m>,

13、其中,q表示输入日志的fsm中所有状态的集合,e表示日志l中所有事件实例的集合,δ={δi|pi∈l}表示日志l中转化函数的集合,m={cij|pi,pj∈l}表示第i个进程与第j个进程间通道cij的集合,j=1,2,...,h,且i≠j;

14、(3.3)将生成的fsm模型进行转换,得到工作流图g:

15、g=(v,e),

16、其中,v={vi|i∈0}表示g的节点集合,e={evivj|vi,vj∈v}表示g中第i个节点vi指向第j个vj的有向边的集合;0为正整数;

17、(4)对工作流图g按照如下步骤进行改进:

18、(4.1)对工作流图g进行抽象处理,去除冗余部分,即将一组事件实例的序列作为一个整体的状态,对多组相同的事件实例序列进行归并,形成一个新的抽象状态,针对所有事件构造得到一系列抽象状态,获取状态之间的关系;

19、(4.2)利用步骤(2)挖掘的时间不变量对对构造的工作流图g进行检查,针对不符合实例之间时序关系的部分进行修改,得到最终工作流图模型;

20、(5)将异常检测视为二分类任务,即正常类或异常类,使用基于top-k池化机制的图卷积神经网络作为异常检测模型,通过提取图中节点的嵌入表示和图的结构信息对最终工作流图模型执行图分类任务,实现对分布式系统日志的异常检测。

21、本发明与现有技术相比具有以下优点:

22、第一、由于本发明采用图卷积神经网络模型,对工作流图模型提取的节点特征、图结构特征以及空间信息特征进行提取并训练,从而解决了传统日志异常检测过程中忽略日志序列之间空间结构信息的问题;因此,以工作流图的形式表示分布式系统日志来进行异常检测能够更充分地考虑到系统执行轨迹之间的关系,将其作为图空间结构信息加入到图卷积神经网络模型中进行异常检测,使得对分布式系统的异常检测准确率进一步提升。

23、第二、本发明采用的工作流图异常检测模型能够检测多种异常类型,包括性能异常、系统突发事件异常和系统日志执行序列异常,更注重于对系统异常类型的判别以及异常点的定位,解决了对分布式系统进行分析和检测困难的问题,并为系统异常的寻找和修复提供了参考。

24、第三、本发明提出分布式系统各端工作流图构造并进行整合的方法,首先对分布式系统各个计算节点构造单独的工作流图子图,随后进行各子图之间的融合,通过挖掘日志中的时序不变量对工作流图进行模型循环改进和细化,最终的总图清晰简明地反映了整个分布式系统的执行和状态,解决了分布式系统日志分散难以处理的问题。



技术特征:

1.一种基于日志工作流挖掘的分布式系统异常检测方法,其特征在于,包括如下步骤:

2.根据权利要求1所述的方法,其特征在于:步骤(2)基于线性时态逻辑ltl挖掘系统运行过程中事件之间的时序关系,是挖掘系统运行过程中事件之间的时序关系常量,该常量由实际的系统日志中记录挖掘得到,当模型中存在不符合常量的时序关系时,将其剔除;将日志中事件实例的时序关系用符号来表示,令t1表示第一事件e1在日志中被记录的时间,t2代表第二事件e2被记录的时间,e2∈ti,对于事件实例mi∈pi,nj∈pj共挖掘得到如下三种常量关系:

3.根据权利要求2所述的方法,其特征在于:挖掘系统运行过程中事件之间的时序关系常量,根据如下规则进行:

4.根据权利要求1所述的方法,其特征在于:步骤(3.1)中输入日志构造的有限状态机fi中所有状态的集合qi,表示如下:

5.根据权利要求4所述的方法,其特征在于:对fsm中的状态根据下式进行转化:

6.根据权利要求1所述的方法,其特征在于:步骤(3.2)中输入日志的fsm中所有状态的集合q,表示如下:

7.根据权利要求1所述的方法,其特征在于:所述步骤(5)中对最终工作流图模型执行图分类任务,具体如下:


技术总结
本发明公开了一种基于日志工作流挖掘的分布式系统异常检测方法,主要解决在海量非结构化分布式系统日志中系统异常检测困难的问题。方案包括:1)对分布式系统产生的日志进行解析,提取日志中事件模板并挖掘日志事件之间的时序关系;2)构造系统单进程FSM模型,并利用进程间的通道对每个进程对应的FSM进行整合得到工作流图;3)对工作流图进行抽象处理,根据时序关系对其进行检查,将不符合实例之间时序关系的部分进行修改,得到最终工作流图模型;4)使用基于Top‑K池化机制的图卷积神经网络模型对最终工作流图进行图分类以识别异常的工作流图。本发明能够针对分布式系统海量非结构化日志实现异常检测,且有效提高了检测准确率。

技术研发人员:李腾,魏少博,韩相宇,张胜凯,朱雄杰,孙小敏,马卓
受保护的技术使用者:西安电子科技大学
技术研发日:
技术公布日:2024/1/14
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1