一种基于时延方差和相关系数值的微服务故障诊断方法

文档序号:36249222发布日期:2023-12-02 16:36阅读:71来源:国知局
一种基于时延方差和相关系数值的微服务故障诊断方法

本发明涉及微服务故障检测领域,特别是涉及一种基于时延方差和相关系数值的微服务故障诊断方法。


背景技术:

1、目前针对微服务系统的故障诊断方法的研究工作主要集中于如何对关联关系模型进行建模,考虑如何加入更多的影响因素以提高故障诊断的全面性和准确性。然而,故障影响因素种类的增加,关联关系模型的复杂化,会极大地影响故障诊断效率,传统软件与微服务软件的差异性并没有完全体现,传统的故障诊断方法不适用于微服务软件的问题也未得到根本性解决。

2、公开号为cn111290900a,名称为一种基于微服务日志的软件故障检测方法的专利文献,通过拓扑检测模型对微服务关键程度进行排名,越关键的微服务越有可能是出现故障的微服务,减少盲目逐个微服务进行故障分析检测所带来的开销,随后通过模式匹配服务避免每次都进行机器学习而带来的故障检测效率低下,最后通过对日志文本特征的提取、降维、学习,构建了一个可以对微服务是否为故障服务进行分类的机器学习模型,但是该方法仅对关键微服务进行故障诊断,忽略了其他微服务出现故障的可能。

3、公开号为cn116627693a,名称为一种微服务系统中的故障检测方法及装置的专利文献,通过获取目标系统的分布式跟踪数据,并通过分布式跟踪数据进行构建,构建出服务调用链;获取目标系统监控数据,使用pca方法进行降维获得监控数据向量;将所述的监控数据向量作为所述服务调用链的权重嵌入服务调用链中;将聚合后的服务调用链作为异常检测模型的输入,得到异常检测模型输出的对目标系统的异常检测结果,但是该方法仅考虑系统监控数据向量,对检测结果的影响,忽略了不同类型故障监控数据向量所造成的影响不同。


技术实现思路

1、为解决上述技术问题,本发明采用的一个技术方案是:提供一种基于时延方差和相关系数值的微服务故障诊断方法,该方法包括:

2、s100:通过服务器收集微服务日志信息,获取带标签的微服务的时延曲线;

3、s200:将所述带标签的微服务的时延曲线进行预处理,得到故障时延曲线、正常时延曲线和故障时延曲线片段;

4、s300:构建微服务故障时延曲线预测模型,对所述故障时延曲线片段进行预测,得到预测故障时延曲线;

5、s400:计算所述预测故障时延曲线的时延方差值与所述故障时延曲线的时延方差值,获得故障时延方差的差值;

6、s500:通过对多组故障时延曲线计算不同类型故障所对应的故障时延方差的差值,得到不同类型故障所对应的故障时延方差区间,构建微服务故障区间集合树;

7、s600:构建故障类型判别规则,根据所述微服务故障区间集合树判断所述故障时延方差值所属故障时延方差区间,若所述故障时延方差的差值处于独立故障区间,则转s800,若所述故障时延方差的差值处于混合故障区间,则转s700;

8、s700:构建微服务故障分类模型,对故障时延曲线所属故障类别进行分类,得到微服务故障类型;

9、s800:根据所述故障类型判别规则,对微服务进行故障诊断,得到微服务故障类型;

10、所述微服务日志信息包括:微服务的时延曲线、微服务时延曲线故障波动起始点、时延最高峰值、故障持续时间、历史的资源占用率、服务器负载率、服务请求信息、网络流量,故障标签;

11、所述s700,包括:

12、s710:通过服务器收集微服务日志信息,获取当前微服务历史故障信息数据,并对故障信息数据中各信息特征进行独热编码转换,获得微服务故障特征;

13、s720:计算所述微服务故障特征的故障相关性系数,获得各类型故障的故障特征系数组成模式;

14、s730:根据所述故障特征系数组成模式计算故障时延曲线的特征,获得各模式下故障时延曲线特征数据;

15、s740:构建微服务故障分类模型,对所述故障时延曲线特征数据进行分类,获得故障时延曲线所对应的故障类型。

16、进一步地,所述将所述带标签的微服务的时延曲线进行预处理,对故障标签对微服务的时延曲线进行划分,得到故障时延曲线和正常时延曲线;

17、所述故障时延曲线片段,是故障时延曲线中故障波动起始点左侧以故障持续时间t为区间大小的正常时延曲线片段。

18、进一步地,所述微服务故障时延预测模型,是指采用长短期记忆网络连接一个全连接网络组成的模型,模型采用所述正常时延曲线进行训练;

19、所述微服务故障时延预测模型表示为:

20、;

21、其中,为模型预测值,是指微服务的时延数据,为全连接网络。

22、进一步地,所述计算故障时延方差的差值,所述计算公式为:

23、;

24、其中,是指故障时延曲线方差值,是指预测故障时延曲线方差值,是指故障时延方差的差值;

25、所述故障时延曲线方差值,是通过对故障时延曲线采用微服务监控系统监控间隔为周期,计算从故障波动起始点到故障持续时间t区间内时延的方差值;

26、所述预测故障时延曲线方差值,是通过对预测故障时延曲线采用微服务监控系统监控间隔为周期,计算从故障波动起始点到故障持续时间t区间内时延的方差值。

27、进一步地,所述微服务故障区间集合树,是指通过对多组故障时延曲线进行方差的差值计算,获得同类型故障方差的差值区间,通过所述方差的差值区间对不同类型的故障建立集合树,所述微服务故障区间集合树表示为:

28、;

29、其中,是指微服务故障区间集合树,是指第m个微服务,是指第n个故障类型,是指第n个故障类型所对应的故障区间。

30、进一步地,所述故障类型判别规则,分为非故障情形、未知故障情形、独立故障情形、混合故障情形;

31、所述非故障情形,是指当故障方差的差值小于微服务故障区间集合树范围时,则判定为该故障时延曲线为偶然性波动事件,认定不存在故障发生;

32、所述未知故障情形,是指当故障方差的差值大于微服务故障区间集合树范围时,认定该故障时延曲线所对应的故障类型为未知故障,交由人工进行分析;

33、所述独立故障情形,是指当故障方差的差值在故障区间集合树范围内并且属于独立故障区间,则认定该故障时延曲线所对应的故障类型为故障区间所对应的故障类型;

34、所述混合故障情形,是指当故障方差的差值在故障区间集合树范围内并且属于混合故障区间,即该故障方差差值属于不同的故障区间,则通过s700对微服务故障类型进行判断;

35、所述独立故障区间,是指故障方差的差值仅被单独类型的故障区间所包含;

36、所述混合故障区间,是指故障方差的差值被多个不同类型故障区间所包含。

37、进一步地,所述故障信息数据包括:历史峰值、持续时间、日志级别、服务器负载、内存使用率、请求信息、网络流量;

38、所述独热编码转化,是指将所述故障信息数据中特征数据转化为二进制特征,将离散的类别特征数据转化为可计算的数值特征数据;

39、所述计算所述微服务故障特征的故障相关性系数,计算公式为:

40、;

41、其中,是指故障类型为的第个故障特征的相关性系数,n是指微服务历史故障信息数据中故障类型为的个数,m是指微服务历史故障信息数据中故障类型不为的个数,是指当前故障特征在微服务历史故障信息数据中的平均数,是指当前故障特征在故障类型为的平均数,是指当前故障特征在其他故障类型的平均数, 是指第s个当前故障特征所对应的特征值;

42、所述特征系数组成模式,表示为:

43、;

44、其中,是指故障的特征系数组成模式,是指故障类型中第1个故障特征的相关性系数;

45、所述微服务故障分类模型,是在knn算法的基础上,采用加权投票机制来决定故障时延曲线所对应故障类型;

46、所述加权投票机制,是统计不同模式下的故障时延曲线特征数据在knn中所属故障类别次数,计算各模式下的不同故障类型的综合次数,选择故障类型综合次数最大的故障类型作为故障时延曲线所对应故障类型,计算公式为:

47、;

48、其中,是指在模式h下故障类型k的综合次数,是指故障类型k在所有故障类型中所占比例,是指模式h下故障k的次数。

49、本发明的有益效果是:

50、1、本发明通过微服务故障时延预测模型,预测故障时延发生情况下原本的正常时延曲线,和实际故障时延曲线进行比较,以故障时延方差差值为基础,对故障类型进行分析,逻辑清晰明了,易于使用,能够降低维护的复杂性以及人工成本;

51、2、本发明建立微服务故障区间集合树结构,通过微服务故障区间集合树能够实现微服务故障类型的快速查找,提升微服务故障检测效率。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1