日志服务支持为查询或分析结果设置告警。设置告警后,日志服务定期检查查询或分析结果,当检查结果满足预设条件时发送告警通知,实现实时的服务状态监控。

使用限制

日志服务告警相关限制说明如下表所示。

限制项说明
组合查询组合查询个数为1~3个。
字符串如果日志字段长度超过1024个字符,只截取前1024个字符用于计算。
条件表达式条件表达式限制说明如下:
  • 条件表达式长度为1~128个字符。
  • 条件表达式只判断每次查询中的前100条查询结果。
  • 条件表达式计算次数不超过1000次。
查询区间每条查询语句的查询时间跨度不能超过24小时。
告警语音通知告警语音未拨通时,不会重复拨打,将以短信方式发送一次通知。

无论告警语音是否拨通均按一次计费。未拨通的提示短信,不会额外产生短信费用。

告警中的查询语句

告警配置中的语句,可以为查询语句或查询分析语句。两者区别如下:
  • 查询语句:返回查询条件命中的日志数据。更多信息,请参见查询概述
    例如,查询最近15分钟内包含error的日志,查询语句为error,一共有154条查询结果。每条日志都是Key-Value组合,您可以对某个Key对应的Value设置告警规则。
    说明 当查询结果超过100条时,告警规则只判断前100条,只要前100条中任意一条日志符合告警规则,就会触发告警。
  • 查询分析语句:对查询条件命中的日志进行计算,返回计算结果。更多信息,请参见分析概述

    例如,统计所有日志中状态码为ok的日志比例,查询分析语句为* | select sum(case when status='ok' then 1 else 0 end) *1.0/count(1) as ratio。设置触发条件为ratio < 0.9,表示当状态码为ok的日志小于总日志数的90%时进行告警。