日志服务支持根据仪表盘中的查询图表设置告警,实现实时的服务状态监控。

您可以在日志服务控制台的查询分析页面或者仪表盘页面设置告警规则。设置告警后,日志服务定期对仪表盘的查询结果进行检查,检查结果满足预设条件时发送告警通知,实现实时的服务状态监控。

使用限制

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

限制项 说明
组合查询 组合查询个数为1~3个。
字符串 如果日志字段长度超过1024个字符,只截取前1024个字符用于计算。
条件表达式
  • 条件表达式长度为1~128个字符。
  • 条件表达式只判断每次查询中的前100条查询结果。
  • 条件表达式计算次数不超过1000次。
短信数量 同一个手机号码每天接收的短信不超过50条。
语音通知数量 同一个手机号码每天接收的语音电话不超过50个。
邮件数量 同一个邮箱每天接收的邮件不超过100条。
查询区间 每个查询语句的查询区间跨度不能超过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%时进行告警。