MySQL 日志告警规则

场景一:配置MySQL单条件告警规则

值字段

在查询条件 SQL 语句中,选择你想要的列名作为查询结果的值字段。如下图所示,我将 count(*) 起个别名 count ,将别名 count 作为值字段取 A 这个查询条件的结果。

mysql001

标签字段

使用 GROUP BY 字段作为标签字段,告警将以此字段进行分组告警。

场景二:将过滤字段放在 where 进行过滤

如下面的查询语句:计算 severity 等级为 1、2、3的活跃告警数量。

SELECT COUNT(*) AS count FROM n9e_v6.alert_cur_event WHERE severity IN (1,2,3);

mysql002

最终产生告警时,只会展现 count 值。

mysql003

场景三:将过滤字段放在 where 进行过滤并分组告警

查询条件设置为以 severity 分组,并将 severity 设定为标签字段

SELECT severity as severity,COUNT(*) AS count FROM n9e_v6.alert_cur_event WHERE severity IN (1,2,3) GROUP BY severity;

mysql004

通过报警时间与数据预览对比发现,使用 severity 分组后,告警会根据标签字段进行分组告警。

mysql005

mysql006

场景四:多查询条件表达式模式

配置多条查询条件 sql ,并将两个查询条件的结果进行阈值告警。

mysql007

mysql008