日志服务提供加工任务运行指标的仪表盘,您可以随时查看加工任务的运行指标信息。您还可以订阅仪表盘,针对仪表盘中的指标信息设置告警监控。本文档通过示例为您演示如何对加工任务指标设置告警监控。

背景信息

对数据加工任务设置监控,可以发现数据流量、加工逻辑、系统运行的一些潜在异常,帮助业务及时做好异常恢复。

概述

本文大部分监控指标基于数据加工诊断仪表盘。建议您关注如下两方面的指标信息:
  • 系统层面:流式加工的消费延迟,是否有异常报错。
  • 业务层面:处理日志行数,输出日志行数。
  1. 登录日志服务控制台,单击Project名称。
  2. 单击页面左侧的仪表盘图标,进入仪表盘列表。
  3. 单击仪表盘名称打开仪表盘页面。

    查看仪表盘

您可以根据具体的业务需求选择不同指标设置告警。关于设置告警的详细步骤请参见设置告警。关于如何订阅请参见订阅仪表盘

加工延迟

  1. shard消费延迟图表中选择新建告警

    加工延迟告警
  2. 设置触发条件。
    例如,选择阈值为120秒时告警:
    [delay (s)] > 120

    加工延迟触发条件
  3. 设置通知方式。
    此处以钉钉webhook为例,更多通知方式请参见通知方式
    加工延迟通知方式
  4. 查看告警通知。

    加工延迟通知

异常报错

  1. 异常详情图表中选择新建告警

    异常报错新建告警
  2. 设置触发条件。
    例如,当level == 'ERROR'时告警:
    异常情况触发条件
  3. 设置通知方式。
    请参见加工延迟的步骤3
  4. 查看告警通知。

    异常报错通知
    说明 ERROR日志一般是由加工逻辑或代码引发,可以在修改代码后重启(停止、启动)加工任务后观察是否还有新的错误。

加工流量(绝对值)

  1. 加工速率图表中选择新建告警

    加工流量新建告警
  2. 设置触发条件。
    例如,当每秒处理日志条数少于4万行告警时告警:
    accept < 40000

    绝对值触发条件
  3. 设置通知方式。
    请参见加工延迟的步骤3
  4. 查看告警通知。

    绝对值告警

加工流量(日同比)

  1. 自定义监控指标。
    1. 在加工任务所在Project,选择internal-etl-log日志库。
    2. 输入如下查询分析语句,并单击查询/分析
      该SQL计算每5分钟的写出日志行数与昨日同比的指标。
      __topic__:  __etl-log-status__ AND __tag__:__schedule_type__:  Resident and event_id:  "shard_worker:metrics:checkpoint" | 
      select dt, today, yesterday, round((today - yesterday) * 100.0 / yesterday, 3) as inc_ration from
      (select dt, (case when diff[1] is null then 0 else diff[1] end) as today, (case when diff[2] is null then 0 else diff[2] end) as yesterday from 
      (select dt, compare("delivered lines", 86400) as diff from 
      (select date_format(__time__ - __time__ % 300, '%H:%i') as dt, sum("progress.delivered") as "delivered lines" from log group by dt order by dt asc limit 5000)
      group by dt order by dt asc limit 5000))
      说明 您还可以修改SQL以设置更精确的告警指标。例如只对任务ID:06f239b7362ad238e613abb3f7fe3c87设置告警。
      __topic__:  __etl-log-status__ AND __tag__:__schedule_type__:  Resident and event_id:  "shard_worker:metrics:checkpoint" and __tag__:__schedule_id__:  06f239b7362ad238e613abb3f7fe3c87 | 
      select ...
    3. 单击添加到仪表盘添加该查询条件到仪表盘etl-monitor

      保存仪表盘
  2. etl-monitor仪表盘中选择新建告警

    仪表盘新建告警
  3. 设置触发条件。
    例如,当日志处理速率比昨日下降40%时告警:
    inc_ration < (-40)

    仪表盘触发条件
  4. 设置通知方式。
    请参见加工延迟的步骤3
  5. 查看告警通知。

    仪表盘告警通知

告警相关操作

可以在告警列表中进行删除、修改或禁用通知操作:
告警相关操作

更多告警操作请参见设置告警