本发明涉及机器学习,具体涉及一种调用链异常指标的检测方法及装置。
背景技术:
1、现有的调用链指标的异常检测的方法,主要采用基于静态阈值和动态阈值两种方式,将调用链指标与静态阈值或者动态阈值进行对比,判定调用链指标是否异常。
2、现有方法中的基于静态阈值的判定方法,通过人工手动的、基于经验的方式,对调用链的检测指标进行阈值设置。手动设置的方式,存在人工设置阈值不准确,以及在对于不同业务系统所提供的接口级服务来说,存在人工设置阈值工作量非常大的问题。对于基于动态阈值的判定方法,是根据历史数据的动态曲线确定动态阈值范围。由于部分运维指标的短期历史走势不一定服从正态分布,所以单一使用动态阈值的检测方式会导致检测的准备率不高的缺陷。
技术实现思路
1、本发明提供一种调用链异常指标的检测方法及装置,用以解决现有技术中调用链异常指标的检测效率以及检测准确率不高的技术问题。
2、第一方面,本发明提供一种调用链异常指标的检测方法,包括:
3、根据目标调用链指标的历史数据,确定所述目标调用链指标的动态基线;
4、根据所述动态基线,对所述目标调用链指标的实时数据进行异常检测;
5、在所述实时数据异常的情况下,
6、将所述实时数据输入孤立森林算法,得到第一异常概率;将所述实时数据输入指数加权移动平均算法,得到第二异常概率;将所述实时数据输入岭回归算法,得到第三异常概率;
7、根据所述第一异常概率、所述第二异常概率以及所述第三异常概率,确定所述实时数据是否为异常指标数据。
8、在一个实施例中,根据所述第一异常概率、所述第二异常概率以及所述第三异常概率,确定所述实时数据是否为异常指标数据,包括:
9、在所述第一异常概率、所述第二异常概率与所述第三异常概率均大于预设检测概率阈值的情况下,
10、确定所述第一异常概率、所述第二异常概率与所述第三异常概率的方差;
11、在所述方差小于预设方差阈值的情况下,确定所述实时数据为异常指标数据。
12、在一个实施例中,根据目标调用链指标的历史数据,确定所述目标调用链指标的动态基线,包括:
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、本发明提供的调用链异常指标的检测方法、装置、电子设备及存储介质,通过目标调用链指标的历史数据确定动态基线,实现对目标调用链指标的初步异常检测。并且,根据三种机器学习算法对目标调用链指标进行进一步的异常检测。通过动态基线与机器学习算法的多重判定机制,最终确定调用链异常指标是否为异常指标数据。在实现对调用链异常指标准确识别的同时,避免了人工设置阈值的识别方式,提高了调用链异常指标识别的效率。
1.一种调用链异常指标的检测方法,其特征在于,包括:
2.根据权利要求1所述的调用链异常指标的检测方法,其特征在于,所述根据所述第一异常概率、所述第二异常概率以及所述第三异常概率,确定所述实时数据是否为异常指标数据,包括:
3.根据权利要求1所述的调用链异常指标的检测方法,其特征在于,所述根据目标调用链指标的历史数据,确定所述目标调用链指标的动态基线,包括:
4.根据权利要求3所述的调用链异常指标的检测方法,其特征在于,所述对所述目标调用链指标的实时数据进行异常检测,包括:
5.根据权利要求4所述的调用链异常指标的检测方法,其特征在于,所述将所述实时数据输入指数加权移动平均算法,得到第二异常概率,包括:
6.根据权利要求5所述的调用链异常指标的检测方法,其特征在于,所述将所述实时数据输入岭回归算法,得到第三异常概率,包括:
7.根据权利要求1所述的调用链异常指标的检测方法,其特征在于,所述根据目标调用链指标的历史数据,确定所述目标调用链指标的动态基线之前,还包括:
8.一种调用链异常指标的检测装置,其特征在于,包括:
9.一种电子设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7任一项所述的调用链异常指标的检测方法。
10.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的调用链异常指标的检测方法。