基于门控台阶异常救援的微服务故障根因定位方法、系统、设备和介质与流程

摘要: 本发明涉及网络信息处理,尤其涉及一种基于门控台阶异常救援的微服务故障根因定位方法、系统、设备和介质。背景技术:1、随着微服务架构在云端应用中的广泛使用,一个系统...
基于门控台阶异常救援的微服务故障根因定位方法、系统、设备和介质与流程

本发明涉及网络信息处理,尤其涉及一种基于门控台阶异常救援的微服务故障根因定位方法、系统、设备和介质。

背景技术:

1、随着微服务架构在云端应用中的广泛使用,一个系统通常由大量相互调用的服务组成。当系统发生故障时,故障可能沿服务调用关系传播,使多个服务及其监控指标同时出现异常,因此,需要根据各服务的响应延迟、cpu占用率、内存占用率、错误率等监控指标,对故障根因进行定位。

2、然后,目前通常采用的统计方式只能在降低误报和避免漏检之间进行取舍,难以在保留真实台阶故障特征的同时抑制微小良性位移及噪声造成的虚假异常,从而影响微服务故障根因定位的准确性。

技术实现思路

1、有鉴于此,为了解决上述技术问题,本发明提供了一种基于门控台阶异常救援的微服务故障根因定位方法、系统、设备和介质。

2、本发明第一方面提供了一种基于门控台阶异常救援的微服务故障根因定位方法,所述方法包括:

3、获取微服务系统的监控指标时序数据,并将所述监控指标时序数据按照预设的故障发生时刻划分为正常窗口和故障窗口;

4、根据所述正常窗口确定各监控指标的正常中心和正常波动尺度,并根据所述正常波动尺度判断对应的监控指标是否为零尺度指标;

5、若判断所述监控指标为零尺度指标,则根据所述零尺度指标在故障窗口内的水平与所述正常中心之间的水平变化确定台阶幅度,并将所述台阶幅度与预设的相对救援门限进行比较;

6、当所述台阶幅度达到所述相对救援门限时,则根据所述零尺度指标在故障窗口内的离散程度,确定临时尺度;

7、根据各监控指标的正常中心和尺度参数,确定各监控指标在故障窗口内的偏差序列;其中,所述尺度参数为非零尺度指标对应的正常波动尺度或达到所述相对救援门限的零尺度指标对应的临时尺度;

8、根据所述偏差序列,确定各监控指标在所述故障窗口的异常得分;

9、根据各服务所包含监控指标的异常得分确定对应的服务得分,并根据所述服务得分确定故障根因定位结果。

10、在其中一个示例中,所述根据所述正常窗口确定各监控指标的正常中心和正常波动尺度,并根据所述正常波动尺度判断对应的监控指标是否为零尺度指标,包括:

11、分别获取各监控指标在所述正常窗口内的中位数,并将所述中位数确定为对应监控指标的正常中心;

12、分别获取各监控指标在所述正常窗口内的第75百分位数和第25百分位数,根据所述第75百分位数与所述第25百分位数之间的差值确定对应监控指标的正常波动尺度;

13、当所述正常波动尺度为零时,则将对应的监控指标确定为零尺度指标;

14、当所述正常波动尺度不为零时,则将对应的监控指标确定为非零尺度指标。

15、在其中一个示例中,所述根据所述零尺度指标在故障窗口内的水平与所述正常中心之间的水平变化确定台阶幅度,并将所述台阶幅度与预设的相对救援门限进行比较,包括:

16、确定所述零尺度指标在故障窗口内的中位数,根据所述故障窗口内的中位数与所述正常中心之间的差值绝对值确定所述台阶幅度;

17、根据所述正常中心的绝对值和预设的救援幅度门限系数确定所述相对救援门限;

18、将所述台阶幅度与所述相对救援门限进行比较,当所述台阶幅度未达到所述相对救援门限时,维持对对应零尺度指标的抑制。

19、在其中一个示例中,所述根据所述零尺度指标在故障窗口内的离散程度,确定临时尺度,包括:

20、获取所述零尺度指标在故障窗口内各监测指标值相对于所述故障窗口的中位数的偏离程度,根据所述偏离程度确定所述零尺度指标在故障窗口内的绝对中位差;

21、根据所述绝对中位差确定所述零尺度指标在故障窗口内的离散尺度,并根据所述正常中心和预设的相对尺度下限系数确定相对尺度下限;

22、将所述离散尺度与所述相对尺度下限中的较大值确定为所述待救援指标的临时尺度。

23、在其中一个示例中,所述根据各监控指标的正常中心和尺度参数,确定各监控指标在故障窗口内的偏差序列,包括:

24、对于正常波动尺度非零的监控指标,根据所述监控指标在故障窗口内各时刻的监测指标值与所述正常中心之间的偏差以及所述正常波动尺度,确定对应的偏差序列;

25、对于台阶幅度达到所述相对救援门限的零尺度指标,根据所述零尺度指标在故障窗口内各时刻的监测指标值与所述正常中心之间的偏差以及所述临时尺度,形成对应的偏差序列;

26、对于台阶幅度未达到所述相对救援门限的零尺度指标,将对应的偏差维持为零,形成对应的偏差序列。

27、在其中一个示例中,所述根据所述偏差序列,确定各监控指标在所述故障窗口的异常得分,包括:

28、根据所述偏差序列确定各监控指标的异常幅度,并根据所述偏差序列在故障窗口内的异常状态确定对应的异常持续度;

29、根据所述异常持续度确定对应监控指标的时间门控值;

30、根据同一服务内各监控指标在正常窗口中的联动关系以及其他监控指标在故障窗口内的异常状态,确定对应监控指标的跨指标支持度,并根据所述跨指标支持度确定跨指标门控值;

31、对所述异常幅度、所述时间门控值和所述跨指标门控值进行乘性组合,确定对应监控指标的异常得分。

32、在其中一个示例中,所述根据各服务所包含监控指标的异常得分确定对应的服务得分,并根据所述服务得分确定故障根因定位结果,包括:

33、针对每一服务,将属于所述服务的多个监控指标按照对应的异常得分进行降序排序;

34、从排序后的多个监控指标中选取预设比例的监控指标,并对所选取监控指标对应的异常得分进行聚合,得到所述服务对应的服务得分;

35、按照各服务对应的服务得分进行排序,根据排序结果确定所述微服务系统的故障根因定位结果。

36、第二方面,本发明还提供了一种基于门控台阶异常救援的微服务故障根因定位系统,所述系统包括:

37、窗口划分模块,用于获取微服务系统的监控指标时序数据,并将所述监控指标时序数据按照预设的故障发生时刻划分为正常窗口和故障窗口;

38、尺度判断模块,用于根据所述正常窗口确定各监控指标的正常中心和正常波动尺度,并根据所述正常波动尺度判断对应的监控指标是否为零尺度指标;

39、台阶救援模块,用于若判断所述监控指标为零尺度指标,则根据所述零尺度指标在故障窗口内的水平与所述正常中心之间的水平变化确定台阶幅度,并将所述台阶幅度与预设的相对救援门限进行比较;

40、临时尺度确定模块,用于当所述台阶幅度达到所述相对救援门限时,则根据所述零尺度指标在故障窗口内的离散程度,确定临时尺度;

41、偏差确定模块,用于根据各监控指标的正常中心和尺度参数,确定各监控指标在故障窗口内的偏差序列;其中,所述尺度参数为非零尺度指标对应的正常波动尺度或达到所述相对救援门限的零尺度指标对应的临时尺度;

42、异常得分确定模块,用于根据所述偏差序列,确定各监控指标在所述故障窗口的异常得分;

43、故障根因定位模块,用于根据各服务所包含监控指标的异常得分确定对应的服务得分,并根据所述服务得分确定故障根因定位结果。

44、第三方面,本发明还提供了一种电子设备,所述电子设备包括存储器及处理器,所述存储器中储存有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如第一方面所述的基于门控台阶异常救援的微服务故障根因定位方法的步骤。

45、第四方面,本发明还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被执行时实现如第一方面所述的基于门控台阶异常救援的微服务故障根因定位方法的步骤。

46、从以上技术方案可以看出,本发明通过利用正常窗口建立各监控指标的正常中心和正常波动尺度,将正常波动尺度为零的监控指标单独识别出来,并根据故障窗口相对于正常中心的水平变化对该类零尺度指标实施台阶幅度门控,仅在台阶幅度达到相对救援门限时,利用故障窗口自身的离散程度建立临时尺度并恢复偏差计算,由此避免了将所有零尺度指标直接置零而漏掉故障后持续台阶变化,也避免了对全部零尺度指标统一采用较小替代尺度而放大微小良性位移;在此基础上,再根据形成的偏差序列确定监控指标异常得分并聚合得到服务得分,使真正具有明显且持续台阶变化特征的监控指标能够参与根因定位,而幅度不足或者噪声主导的零尺度变化仍受到限制,从而在兼顾真实台阶异常检出能力的同时降低非故障变化造成的错误评分,提高微服务故障根因定位的准确性和稳定性。