乐趣区

关于数据库:DataLeap的全链路智能监控报警实践二概念介绍

更多技术交换、求职机会,欢送关注字节跳动数据平台微信公众号,回复【1】进入官网交换群

概念介绍

基线监控

依据监控规定和工作运行状况,DataLeap 的基线监控可能决策是否报警、何时报警、如何报警以及给谁报警。它保障的是工作整体产出链路,外围指标包含:

  • 笼罩链路中的所有工作;
  • 升高工作监控配置老本;
  • 防止有效报警。

    保障工作

    个别抉择有 SLA 要求 的工作作为保障工作退出基线,DataLeap 通过保障工作的依赖拓扑图主动监控上游工作,造成须要监控的工作链路。

    工夫定义

    承诺工夫 :最晚实现工夫,即 SLA。
    预警余量 :基线 SLA Buffer,耗费预警余量即触发基线预警。
    预警工夫 :工作承诺工夫 – 预警余量,即工作预期最晚实现工夫。
    预测运行时长 :基于工作历史的执行状况预测当前任务执行的运行时长。
    承诺最晚开始工夫 :承诺工夫 - 工作预测运行时长。
    预警最晚开始工夫 :预警工夫 - 工作预测运行时长。
    各工夫的关系如下图所示:

    监控范畴

    DataLeap 的基线默认监控的范畴包含:基线保障工作及保障工作上游的所有工作 。如下图所示,保障工作 D,E 及它们所有的上游节点都会纳入基线监控范畴,而工作 C,F 不受基线监控。值得阐明的是,DataLeap 的基线监控容许用户配置基线监控只笼罩“ 指定我的项目”下的工作,此时基线监控的范畴就只蕴含了保障工作及这些我的项目下的上游工作。

    基线实例

    和工作相似,基线也有业务工夫的概念。对工作来说,一个业务工夫会生成一个工作实例;而对基线来说,一个业务工夫会生成一个基线实例,负责监控同一业务工夫下保障工作的实例及其依赖的所有上游工作实例的运行状态。天基线和小时基线每天生成实例的规定如下:
    天基线 :每天生成一个基线实例,其业务工夫与该基线保障工作的业务工夫雷同;
    小时基线 :承诺工夫有两种设置形式: 对立承诺和分时承诺。如果是对立承诺,则生成基线实例的个数为 24 个,每个基线实例的承诺工夫统一;如果是分时承诺,则每天生成 N 个基线实例,其中 N 为用户配置的监控业务工夫范畴蕴含的业务工夫数量,N 的范畴是[1,24]。

    基线实例状态

    平安 :工作在预警工夫之前实现。
    预警 :工作在预警工夫未开始运行,但还未达到承诺工夫。
    破线 :工作在承诺工夫仍未运行实现。
    其余:基线实例敞开或者基线没有关联工作时,基线实例所处的状态。

    报警类型

    基线监控反对十分丰盛的报警类型:
    基线预警 :基线监控的链路上,首个没有在基线预警工夫节点开始运行的节点。
    基线破线:“基线破线”报警需满足以下两个条件:

    1. 工作节点的上游 (蕴含间接和间接上游) 没有呈现过破线;
    2. 该工作没有在破线工夫节点开始运行。

    破线加剧
    “执行变慢导致破线加剧”报警触发需满足以下两个条件:

    1. 工作所在链路已发送首次“基线破线”报警
    2. 工作运行耗时相较于预测运行耗时有所增加,具体来说:

    a. 当工作理论开始工夫早于基线破线开始工夫时,将“破线开始工夫 + (预测运行耗时 * (1 + N%))”作为检测时间点,如果工作达到检测时间点时还没有运行实现,则触发告警;
    b. 当工作理论开始工夫晚于破线开始工夫时,将“工作理论开始工夫 + (预测运行耗时 * (1 + N%))”作为检测时间点,如果工作达到检测时间点时还没有运行实现,则触发告警。
    保障工作预警工夫未实现
    基线预警工夫达到 (承诺工夫 - 预警余量),查看基线所有保障工作是否实现运行,若有保障工作未运行实现,且基线之前无预警、破线报警,则触发报警。
    保障工作承诺工夫未实现
    基线承诺工夫达到,查看基线所有保障工作是否实现运行,若有保障工作未运行实现,则触发报警。
    工作失败事件
    基线监控链路上,任意工作,重试完结仍失败,则触发失败事件。监控链路上的工作,产生失败事件则触发该报警。

    基线事件

    基线监控工作(保障工作及其上游工作),在执行过程中,若呈现失败、变慢等状况,将被当作基线的异样事件,进行记录。
    变慢事件 : 辨认基线监控工作(保障工作及其上游)运行变慢的状况。辨认条件为:工作运行时长较该工作的预测运行时长上涨了 X%,则视为一个变慢事件。
    失败事件 : 辨认基线监控工作(保障工作及其上游)运行失败的状况,辨认条件为:工作运行过程中呈现过失败,则视为一个失败事件。
    基线事件的状态蕴含“新发现”和“已复原”两种。当基线监控的工作产生变慢或者失败事件时,基线事件状态更新为“新发现”;但如果工作最终实现了的话,基线事件的状态会被更新为“已复原”。

点击跳转大数据研发治理套件 DataLeap 理解更多

退出移动版