vivo 故障定位平台的探索与实践

作者:vivo 互联网服务器团队- Liu Xin、Yu Dan

本文基于故障定位项目的实践,围绕根因定位算法的原理进行展开介绍。鉴于算法有一定的复杂度,本文通过图文的方式进行说明,希望即使是不懂技术的同学也能理解。

一、背景介绍

1.1 程序员的困扰

作为一名IT从业人员,比如开发和运维,多少有过类似的经历:睡觉的时候被电话叫醒,过节的时候在值班,游玩的时候被通知处理故障。作为一名程序员,我们时时刻刻都在想着运用信息技术,为别人解决问题,提升效率,节省成本。随着微服务架构的快速发展,带来一系列复杂的调用链路和海量的数据。对于我们来说,排查问题是一个大挑战,寻找故障原因犹如大海捞针,需要花费大量的时间和精力。

1.2 现状分析

vivo已经建立了一套完整的端到端监控体系,涵盖了基础监控、通用监控、调用链、日志监控、拨测监控等。这些系统每天都会产生海量的数据,如何利用好这些数据,挖掘数据背后的潜在价值,让数据更好的服务于人,成为了监控体系的探索方向。目前行业内很多厂商都在朝AIOps探索,业界有一些优秀的根因分析算法和论文,部分厂商分享了在故障定位实践中的解决方案。vivo有较完整的监控数据,业界有较完整的分析算法和解决方案,结合两者就可以将故障定位平台run起来,从而解决困扰互联网领域的定位问题。接下来我们看下实施的效果。

二、实施效果

目前主要针对平均时延指标的问题,切入场景包括两种:主动查询和调用链告警。

2.1 主动查询场景

当用户反馈某个应用很慢或超时,我们第一反应可能是查看对应服务的响应时间,并定位出造成问题的原因,通常这两个步骤是分别进行,需要用到一系列的监控工具,费时费力。如果使用故障定位平台,只需从vivo的paas平台上进入故障定位首页,找到故障服务和故障时间,剩下的事情就交给系统完成。

2.2 告警场景

当收到一条关于平均响应时间问题的调用链告警,只需查看告警内容下方的查看原因链接,故障定位平台就能帮助我们快速定位出可能的原因。下图是调用链告警示例:

图1 调用链告警

调用链是vivo服务级监控的重要手段,上图红框内原因链接是故障定位平台提供的根因定位能力。

2.3 分析效果

通过以上两种方式进入故障定位平台后,首先看到的是故障现场,下图表示服务A的平均响应时间突增。

图2 故障现场

上图红框区域,A服务从10:00左右,每分钟平均时延从78ms开始增长,突增到10:03分的90ms左右。

直接点击图2蓝色的【根因分析】按钮,就可以分析出下图结果:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值