监控体系建设-全链路监控

监控体系建设 2019/11/02

监控体系建设-全链路监控

定义

全链路监控: 从业务视角出发,能直观反映整个业务流程的健康状态,无需切换系统,即可贯穿全局和上下游,能快速发现,定位问题。

实现关键

健康状态评估

     通过统一数据模型,和查询接口,完成监控对象数据模型的抽象,
     通过对指标的归一化处理,抽象出黄金指标,完成对象对象状态特性的抽象     
     通过对服务稳定性抽象,如SLA,MTTR等为服务打分,完成对服务,系统的抽象。

链路拓扑生成

人工筛选+自动生成
  • 人工筛选

      类似黄金指标,可以把影响业务的核心流程通过人工的形式梳理出来,形成黄金流程。关注这个黄金流程上的业务活动,
      以及核心这些业务活动关联以来有什么(系统,服务)
    
  • 自动生成

    从三个维度:

      服务 与 资源的关系:
         来自CMDB,服务树。辅助确定故障影响面;
      服务 与 服务 的关系:
        来自中间件埋点
      网络拓扑关系:
        来自网络流量分析,网络拓扑 
    

异常检测

    智能基线预警
    专家规则预警

问题及解决方案

跨部门或者跨BU的链路监控问题

业务全链路路监控通过“黄金指标”+“业务维度”来解决这个难题

首先每个部门把直接对外提供服务的核心业务梳理出来,并设定它的“黄金指标”,我们设定这样的黄金指标
为这个部门的SLA指标,其它部门的系统调用这个业务时,就看这些SLA的指标是否正常,而不再关心这个业
务的内部调用细节。

每个部门都定义自己的对外核心业务和SLA指标,形成一种标准化的服务能力评价体系,业务全链路可以把各个部门的业务节点串联起来,组成一个更大的大网,在这个里面每个部门都对外暴露的自己的关键业务,每个关键业务通过“黄金指标”量化服务能力,这样就可以快速定位到底是谁的问题,建立起一个正在的全景式监控

业务全链路的精确的定位

精准定位两类:

 鹰眼系统,原理和Dapper类似,主要做系统Trace链路排查
 阿里的A3系统: 日志的异常诊断的一个工具,

业务全链路的异常检测

业务活动的监控指标分为三层

  • 第一层是这个业务活动的黄金指标,对第一层的指标我们会追求它的准确率,会为每一个指标建立单独的预测模型,然后通过时间序列等算法,尽可能做到对这个指标的准确判断以及报警。
  • 第二层是这个业务活动依赖各系统服务的监控指标,对于这一层指标我们采用的准确性与成本和效率均衡的策略,通过一些轻量级波动检测算法来实现异常检测,而且这一层次的检测是由上一层触发,只有在上一层检测发现异常时才触发,不会一直定时执行。
  • 第三层是这个业务活动所在应用的监控指标,包括他整个系统调用链路上的各种应用指标,包括系统指标、各类中间件、缓存、数据库等等,这一层的数据量是最大的,我们不会直接用智能算法分析这些指标,而是分析它们产生的各类报警事件和变更事件

异常检测分析流程:

AI时代的全链路监控,阿里工程师怎么做

Post Directory