创建日志服务告警策略时,需要指定告警的触发条件表达式,日志服务根据触发条件表达式的执行结果判断是否满足告警条件。
判断触发条件表达式的执行结果时,表达式变量对应的告警策略中分析语句的执行结果将作为输入。如果判断触发条件表达式的执行结果为真,则触发告警。例如指定执行语句为 result:error | SELECT count(*) AS ErrCount
,指定告警的触发条件表达式为 $1.ErrCount>0
,表示出现 result 为 error 的日志时触发告警。
告警触发条件表达式的语法格式为 $N.keyname
,支持引用查询分析的结果。
其中:
$1.key
引用编号为 1
的查询中的 key
字段名。SELECT count(*) AS ErrCount
。当查询分析结果返回多个值时:
$1.key1+$2.key2>100
,若分析语句 1 和 2 分别返回 x 和 y 条结果,则会进行 x*y 次计算。在计算过程中当结果满足 $1.key1+$2.key2>100
为真时告警、或计算达到 1000 次时停止计算不告警。$1.key1+$1.key2
计算结果为 100,$1.key1+$1.key2 >100
不会触发,$1.key1+$1.key2 >=100
则会触发。[]
将引用变量括起来,[]
内的变量会当作一个整体来处理。例如 [$1.process-time]
,其中 process-time
整体会被当作一个 key。+ - / * & | ^ ** % >> << > >= < <= == != =~ !~ || && ! - ~ ? : ()
。分类 | 运算符名称 | 运算符 | 示例 |
---|---|---|---|
基础运算符 | 求和运算符 |
|
|
减法运算符 |
|
| |
乘法运算符 |
|
| |
除法运算符 |
|
| |
取模运算符 |
|
| |
比较运算符 | 等于 |
|
|
大于 |
|
| |
小于 |
|
| |
大于等于 |
|
| |
小于等于 |
|
| |
不等于 |
|
| |
括号 | 小括号 |
|
|
逻辑运算符 | 与 |
|
|
或 |
|
| |
转义运算 | 转义运算 |
|
|