[发明专利]一种微服务系统的故障根因定位方法有效
| 申请号: | 202210007248.5 | 申请日: | 2022-01-06 |
| 公开(公告)号: | CN114024837B | 公开(公告)日: | 2022-04-05 |
| 发明(设计)人: | 谢林涛;向成钢 | 申请(专利权)人: | 杭州乘云数字技术有限公司 |
| 主分类号: | H04L41/0677 | 分类号: | H04L41/0677;H04L41/12 |
| 代理公司: | 杭州求是专利事务所有限公司 33200 | 代理人: | 陈升华 |
| 地址: | 310000 浙江省杭州市余*** | 国省代码: | 浙江;33 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 微服 系统 故障 定位 方法 | ||
1.一种微服务系统的故障根因定位方法,其特征在于,包括以下步骤:
1)实时采集微服务系统中产生的全量调用链数据;
全量调用链数据的每一条调用链包括span_id,parent_id,duration,service_id,process_id,host_id,error;
其中,span_id表示该次调用的编号;parent_id表示该次调用的父调用的编号,如果该次调用为根节点,则parent_id为None;duration为该次调用的耗时;service_id表示该节点对应的服务编号;process_id表示该节点对应的进程编号;host_id表示该节点对应的主机编号;error等于0或1,表示该次调用是否失败;
2)基于全量调用链数据,实时统计业务指标,利用异常检测算法判断业务指标是否异常,并确定对应的异常时间段;
3)获取异常时间段内对应的所有调用链数据,对于每条调用链数据,实时构建span流程图并计算除了根节点外的每个节点的异常分,汇聚异常时间段所有span流程图构建服务拓扑图、进程拓扑图和主机拓扑图,基于进程拓扑图和主机拓扑图根据计算确定故障根因节点;
汇聚异常时间段所有span流程图构建服务拓扑图、进程拓扑图和主机拓扑图,具体包括:
3.3.1)对于一条调用链的span流程图,根节点所在的深度数值设为0,其子节点所在的深度数值为1,即子节点的深度是在父节点的深度数值上加1,其中如果有多个并列的子节点,则这些子节点享有相同的深度数值;
3.3.2)汇聚异常时间段内的所有span流程图,对于深度数值相同且service_id相同的节点合并为一个节点,并用该service_id表示此节点,由此构建了异常时间段内的服务拓扑图;
3.3.3)构建异常时间段内的进程拓扑图和主机拓扑图,拓扑图中的每个节点分别用process_id和host_id表示;
基于进程拓扑图和主机拓扑图根据计算确定故障根因节点,具体包括:
3.4.1)将异常分根据深度数值和process_id汇聚到进程拓扑图中,将异常分根据深度数值和host_id汇聚到主机拓扑图中,由此得到进程拓扑图和主机拓扑图中各个节点的异常分;
3.4.2)按照深度数值从大到小的顺序排序,在同一深度数值下,按照先进程拓扑图再主机拓扑图的顺序,定位到故障根因节点。
2.根据权利要求1所述的微服务系统的故障根因定位方法,其特征在于,步骤2)中,所述的统计业务指标包括:
调用次数、错误率、90%分位点的耗时,50%分位点的耗时四个业务指标。
3.根据权利要求1所述的微服务系统的故障根因定位方法,其特征在于,步骤3)中,对于每条调用链数据,实时构建span流程图,具体包括:
3.1.1)根据该条调用链中每个span里的parent_id和span_id之间的对应关系,构建span_id之间的调用关系拓扑,其中开始节点是parent_id为None所对应的span_id;
3.1.2)一条调用链的span_id之间的调用关系拓扑即为该调用链的span流程图。
4.根据权利要求1所述的微服务系统的故障根因定位方法,其特征在于,步骤3)中,对于每条调用链数据,计算除了根节点外的每个节点的异常分,具体包括:
3.2.1)计算得到:当前节点的error值为1时,则记为1,否则记为0;
3.2.2)计算得到:当前节点的duration在父节点的duration中占比超过预设阈值,则记为1,否则记为0;
3.2.3)计算得到:当前节点的父节点的duration与其所有子节点的duration之差在该父节点的duration中占比超过预设阈值,则记为1,否则记为0;
3.2.4)合并上述三个异常分、、得到该节点的异常分,即该节点异常分,其中为0~3,为0~3,为0~3,则该节点对应的service_id,process_id,host_id的异常分均为。
5.根据权利要求4所述的微服务系统的故障根因定位方法,其特征在于,步骤3.2.2)中,为0.5~1;
步骤3.2.3)中,为0.5~1。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州乘云数字技术有限公司,未经杭州乘云数字技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210007248.5/1.html,转载请声明来源钻瓜专利网。





