日志服务以日志形式记录告警的整个生命周期,并存储到专属的Logstore中。您可以通过告警日志,了解监控对象的整体状况、稳定性等。本文介绍在专属Logstore中进行告警日志自定义分析的操作步骤。

背景信息

在首次使用日志服务告警时,系统会提示您选择一个地域,并自动在该地域创建日志服务资源,即在您所选的地域创建一个名为sls-alert-主账号ID-区域的Project和名为internal-alert-center-log的Logstore,用于存储告警日志。
说明 internal-alert-center-log Logstore为免费使用,并默认已创建索引。

日志服务基于internal-alert-center-log Logstore,生成内置仪表盘,用于统计告警的触发情况、通知情况等。更多信息,请参见告警中心大盘。您也可以在该Logstore中,执行查询和分析语句对告警日志进行自定义分析。

日志主题

不同阶段的告警日志的主题不同,因此您可以通过日志中的__topic__ 字段区分不同阶段的告警日志。常见的日志主题如下所示。日志主题
日志主题 说明
__topic__: alert_state 告警规则评估数据。
__topic__: alert_received 告警管理系统接收到告警消息。
__topic__: alert_routed 告警经过告警策略之后,进行路由合并。
__topic__: alert_pre_filter 告警进入抑制静默流程。
__topic__: alert_silenced 告警被抑制或者静默。
__topic__: alert_pre_notify 告警进入通知发送流程。
__topic__: alert_notified 告警通知被发送。
__topic__: system_config 由于配置错误产生的日志。

操作步骤

  1. 登录日志服务控制台
  2. 在Project列表中,单击目标Project(例如sls-alert-13****47-cn-hangzhou)。
  3. 日志存储 > 日志库页签中,单击internal-alert-center-log
  4. 在Logstore查询和分析页面,自定义分析告警日志。
    查询和分析语句由查询语句和分析语句构成,格式为查询语句|分析语句,查询分析语句语法请参见查询语法SQL分析语法
    • 示例1:统计一定时间范围内,触发告警的告警监控规则以及对应的触发次数。
      • 查询和分析语句
        __topic__: alert_received |
        select
          "alert.project" as project,
          "alert.alert_name" as alert_name,
          count(*) as cnt
        group by
          project,
          alert_name
        order by
          cnt desc
      • 查询和分析结果自定义分析告警记录
    • 示例2:统计一定时间范围内,各个通知渠道发送失败的次数。
      • 查询和分析语句
        __topic__: alert_notified and level: error |
        select
          "notifierConfig.type" as notificationType,
          count(*) as cnt
        group by
          notificationType
        order by
          cnt desc
      • 查询和分析结果自定义分析告警记录
    • 示例3:查看告警通知失败的原因。
      • 查询和分析语句
        __topic__: system_config
        and alert.alert_id: alert -1626423664 -868572 |
        select
          level,
          error,
          msg,
          "desc"
      • 查询和分析结果
        • 如果查询和分析结果中有数据,则说明告警配置有问题。关于配置错误的具体说明,请参见配置错误详情自定义分析告警记录
        • 如果查询和分析结果中无数据,可能是因为通知渠道问题(例如Webhook地址无效、钉钉机器人被删除等),您可以执行如下查询和分析语句,进一步查看发送通知失败的原因。
          __topic__: alert_notified
          and level: error
          and alert.alert_id: alert -1626423664 -868572 |
          select
            error

          例如返回如下信息,说明是因为Webhook地址无效导致告警通知发送失败。

          自定义分析告警日志