细粒度的调用链异常检测方法技术

技术编号:39672081 阅读:10 留言:0更新日期:2023-12-11 18:37
本发明专利技术提供细粒度的调用链异常检测方法

【技术实现步骤摘要】
细粒度的调用链异常检测方法、模型的训练方法及装置


[0001]本专利技术实施例涉及计算机
,尤其涉及细粒度的调用链异常检测方法

模型的训练方法及装置


技术介绍

[0002]微服务架构自分布式服务架构衍化而来,既保留了原有分布式系统的基础结构,又提升了系统整体的运转效率

但是在微服务架构中,服务是细粒度的,协议是轻量级的,微服务架构在给软件服务带来巨大便利的同时,也给软件服务的运维带来了巨大的挑战

例如:针对于微服务架构的复杂调用关系,给运维人员在调用链异常检测

故障定位方面带来了挑战

[0003]相关技术中,主要采用监督和半监督机器学习方法对调用链进行异常检测,该方法需要手动标注才能完成模型的训练过程,且需要运维人员更新异常标注,效率较低

开销较大且不利于维护

而现有的无监督调用链异常检测算法虽然解决了上述问题,但是调用链异常检测的准确度和精度较低


技术实现思路

[0004]本专利技术实施例提供细粒度的调用链异常检测方法

模型的训练方法及装置,以解决相关技术中调用链异常检测方法的准确率较低的技术问题

[0005]第一方面,本专利技术实施例提供一种细粒度的调用链异常检测方法,所述方法包括:
[0006]确定待处理请求的调用链;
[0007]提取所述调用链中,每一个调用单元的结构特征和时间特征;
[0008]其中,所述调用单元用于表示所述调用链中的第一服务调用所述调用链中的第二服务的调用过程;所述时间特征包括:处理时间和等待时间;所述处理时间为所述第二服务处理所述待处理请求的子请求所消耗的时间,所述等待时间为所述第一服务向所述第二服务发送所述子请求起始,到所述第二服务开始处理所述子请求为止所消耗的时间;所述结构特征用于描述所述第一服务与所述第二服务之间的调用顺序;所述第一服务为调用发起服务,所述第二服务为被调用的服务;
[0009]将所述结构特征和所述时间特征输入至所述训练好的变分图自动编码器
VGAE
模型中,进行所述调用链的异常检测

[0010]可选的,所述结构特征和所述时间特征均能够以矩阵的形式进行表示;
[0011]其中,所述结构特征以邻接矩阵的形式进行表示,所述邻接矩阵中的元素用于表示所述调用链的服务之间是否存在调用关系;
[0012]所述时间特征以特征矩阵的形式表示,所述特征矩阵中的列分别用于存储所述等待时间和所述处理时间

[0013]可选的,将所述结构特征和所述时间特征输入至所述训练好的
VGAE
模型中,进行所述调用链的异常检测包括:
[0014]将所述结构特征和所述时间特征输入至所述训练好的
VGAE
模型中,得到所述训练好的
VGAE
模型的输出结果,其中,所述输出结果为所述调用链的异常得分;
[0015]对所述异常得分进行
P
值化处理;
[0016]根据
P
值化处理后所得到的
P
值与阈值的大小关系,确定所述调用链是否异常

[0017]可选的,在将所述结构特征和所述时间特征输入至所述训练好的
VGAE
模型中,进行所述调用链的异常检测之后,所述方法还包括:
[0018]若检测结果为所述调用链异常则执行根因定位算法,确定导致所述调用链异常的服务,其中包括:
[0019]搜索用于训练
VGAE
模型的训练集;
[0020]若在所述训练集中搜索到与所述特征矩阵齐次的齐次调用链样本,则基于所述齐次调用链样本的等待时间的标准值和标准偏差,以及所述齐次调用链样本的处理时间的标准值和标准偏差,对所述调用链的每个调用单元的等待时间和处理时间均进行
z
分数归一化处理,得到
N

z
分数值,其中,
N
的个数为调用单元的个数,
N
为正整数;
[0021]将所述
N

z
分数值按从高到低的顺序筛选出
K

z
分数值,其中,
K
为正整数,且
K
小于
N

[0022]将所述
K

z
分数值所对应的调用单元中的服务确定为导致所述调用链异常的服务

[0023]第二方面,本专利技术实施例提供一种模型的训练方法,所述方法包括:
[0024]基于训练集中的调用链样本对待训练的
VGAE
模型进行训练,得到训练好的
VAGE
模型;其中包括:
[0025]提取每一条所述调用链样本中,每一个调用单元的结构特征和时间特征;其中,所述调用单元用于表示所述调用链样本中的第三服务调用所述调用链样本中的第四服务的调用过程;所述时间特征包括:处理时间和等待时间;所述处理时间为所述第四服务处理自身所接收到的调用请求所消耗的时间,所述等待时间为所述第三服务向所述第四服务发送所述调用请求起始,到所述第四服务开始处理所述调用请求为止所消耗的时间;所述结构特征用于描述所述第三服务与所述第四服务之间的调用顺序;所述第三服务为调用发起服务,所述第四服务为被调用的服务;
[0026]基于所述结构特征和所述时间特征,对所述待训练的
VGAE
模型进行训练;
[0027]其中,所述待训练的
VGAE
模型的输入数据为所述结构特征和所述时间特征,所述待训练的
VGAE
模型的输出数据为重构的结构特征和重构的时间特征,训练目的为基于预设的损失函数,不断调整所述
VGAE
模型的内部参数,以最小化所述输出数据与所述输入数据之间的差异,并学习所述调用链样本的特征表示和结构表示

[0028]可选的,所述结构特征和所述时间特征均能够以矩阵的形式进行表示

[0029]可选的,基于所述结构特征和所述时间特征,对所述待训练的
VGAE
模型进行训练包括:
[0030]对所述结构特征和所述时间特征进行去噪处理,基于去噪处理后的所述结构特征和所述时间特征,对所述待训练的
VGAE
模型进行训练;
[0031]其中,对所述结构特征和所述时间特征进行去噪处理包括:
[0032]将所述结构特征和所述时间特征输入预先训练好的生成对抗网络;
[0033]基于所述生成对抗网络对所述结构特征和所述时间特征进行去噪处理;
[0034]其中,所述生成对抗网络包括第一编码器和第二编码器,所述第一编码器和所述第二编码器共享本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种细粒度的调用链异常检测方法,其特征在于,所述方法包括:确定待处理请求的调用链;提取所述调用链中,每一个调用单元的结构特征和时间特征;其中,所述调用单元用于表示所述调用链中的第一服务调用所述调用链中的第二服务的调用过程;所述时间特征包括:处理时间和等待时间;所述处理时间为所述第二服务处理所述待处理请求的子请求所消耗的时间,所述等待时间为所述第一服务向所述第二服务发送所述子请求起始,到所述第二服务开始处理所述子请求为止所消耗的时间;所述结构特征用于描述所述第一服务与所述第二服务之间的调用顺序;所述第一服务为调用发起服务,所述第二服务为被调用的服务;将所述结构特征和所述时间特征输入至训练好的变分图自动编码器
VGAE
模型中,进行所述调用链的异常检测
。2.
根据权利要求1所述的方法,其特征在于,所述结构特征和所述时间特征均能够以矩阵的形式进行表示;其中,所述结构特征以邻接矩阵的形式进行表示,所述邻接矩阵中的元素用于表示所述调用链的服务之间是否存在调用关系;所述时间特征以特征矩阵的形式表示,所述特征矩阵中的列分别用于存储所述等待时间和所述处理时间
。3.
根据权利要求1所述的方法,其特征在于,将所述结构特征和所述时间特征输入至所述训练好的
VGAE
模型中,进行所述调用链的异常检测包括:将所述结构特征和所述时间特征输入至所述训练好的
VGAE
模型中,得到所述训练好的
VGAE
模型的输出结果,其中,所述输出结果为所述调用链的异常得分;对所述异常得分进行
P
值化处理;根据
P
值化处理后所得到的
P
值,确定所述调用链是否异常
。4.
根据权利要求2所述的方法,其特征在于,在将所述结构特征和所述时间特征输入至所述训练好的
VGAE
模型中,进行所述调用链的异常检测之后,所述方法还包括:若检测结果为所述调用链异常则执行根因定位算法,确定导致所述调用链异常的服务,其中包括:搜索用于训练
VGAE
模型的训练集;若在所述训练集中搜索到与所述特征矩阵齐次的齐次调用链样本,则基于所述齐次调用链样本的等待时间的标准值和标准偏差,以及所述齐次调用链样本的处理时间的标准值和标准偏差,对所述调用链的每个调用单元的等待时间和处理时间均进行
z
分数归一化处理,得到
N

z
分数值,其中,
N
的个数为调用单元的个数,
N
为正整数;将所述
N

z
分数值按从高到低的顺序筛选出
K

z
分数值,其中,
K
为正整数,且
K
小于
N
;将所述
K

z
分数值所对应的调用单元中的服务确定为导致所述调用链异常的服务
。5.
一种模型的训练方法,其特征在于,所述方法包括:基于训练集中的调用链样本对待训练的
VGAE
模型进行训练,得到训练好的
VAGE
模型;其中包括:提取每一条所述调用链样本中,每一个调用单元的结构特征和时间特征;其中,所述调用单元用于表示所述调用链样本中的第三服务调用所述调用链样本中的第四服务的调用
过程;所述时间特征包括:处理时间和等待时间;所述处理时间为所述第四服务处理自身所接收到的调用请求所消耗的时间,所述等待时间为所述第三服务向所述第四服务发送所述调用请求起始,到所述第四服务开始处理所述调用请求为止所消耗的时间;所述结构特征用于描述所述第三服务与所述第四服务之间的调用顺序;所述第三服务为调用发起服务,所述第四服务为被调用的服务;基于所述结构特征和所述时间特征,对所述待训练的
VGAE
模型进行训练;其中,所述待训练的
VGAE
模型的输入数据为所述结构特征和所述时间特征,所述待训练的
VGAE
模型的输出数据为重构的结构特征和重构的时间特征,训练目的为基于预设的损失函数,不断调整所述
VGAE
模型的内部参数,以最小化所述输出数据与所述输入数据之间的差异,并学习所述调用链样本的特征表示和结构表示
。6.
根据权利要求5所述的方法,其特征在于,所述结构特征和所述时间特征均能够以矩阵的形式进行表示
。7.
根据权利要...

【专利技术属性】
技术研发人员:孙永谦刘恒郑汀华张圣林潘忠杰邹永强杨晖李筱沛周世杰曹东瑜
申请(专利权)人:云账户技术天津有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1