groups: - name: mysql.rules rules: - alert: MysqlDown expr: mysql_up == 0 for: 1s labels: severity: critical annotations: title: 'MySQL down' description: "Mysql实例: 【{{ $labels.instance }}】, MySQL instance is down"
- alert: MysqlTooManyConnections(>80%) expr: avg by (instance) (rate(mysql_global_status_threads_connected[1m])) / avg by (instance) (mysql_global_variables_max_connections) * 100 > 80 for: 2m labels: severity: warning annotations: title: 'MySQL too many connections (> 80%)' description: "Mysql实例: 【{{ $labels.instance }}】, More than 80% of MySQL connections are in use, Current Value: {{ $value }}%"
- alert: MysqlThreadsRunningHigh expr: mysql_global_status_threads_running > 80 for: 2m labels: severity: warning annotations: title: 'MySQL Threads_Running High' description: "Mysql实例: 【{{ $labels.instance }}】, Threads_Running above the threshold(40), Current Value: {{ $value }}"
- alert: MysqlTooManyClientThreadsActivity expr: mysql_global_status_threads_connected{instance !~ "10.xxx:3306||10.xxxx:3306"} > 120 for: 2m labels: severity: warning annotations: title: 'Too many Client Thread activity' description: "Mysql实例:【{{ $labels.instance }}】, {{ $value }} Too many Client Thread activity"
- alert: MysqlQpsHigh expr: sum by (instance) (rate(mysql_global_status_queries[2m])) > 500 for: 2m labels: severity: warning annotations: title: 'MySQL QPS High' description: "Mysql实例: 【{{ $labels.instance }}】, MySQL QPS above 500, Current Value: {{ $value }}"
- alert: MysqlSlowQueries expr: increase(mysql_global_status_slow_queries[1m]) > 0 for: 2m labels: severity: warning annotations: title: 'MySQL slow queries' description: "Mysql实例: 【{{ $labels.instance }}】, has some new slow query."
- alert: MysqlTooManyAbortedConnections expr: round(increase(mysql_global_status_aborted_connects[5m])) > 300 for: 5m labels: severity: warning annotations: title: 'MySQL too many Aborted connections in 5 minutes' description: "Mysql实例: 【{{ $labels.instance }}】, {{ $value }} Aborted connections within 5 minutes"
- alert: MysqlTooManyAbortedClients expr: round(increase(mysql_global_status_aborted_clients[120m])) > 300 for: 2m labels: severity: warning annotations: title: 'MySQL too many Aborted connections in 2 hours' description: "Mysql实例: 【{{ $labels.instance }}】, {{ $value }} Aborted Clients within 2 hours"
- alert: MysqlSlaveIoThreadNotRunning expr: mysql_slave_status_master_server_id > 0 and ON (instance) mysql_slave_status_slave_io_running == 0 for: 1s labels: severity: critical annotations: title: 'MySQL Slave IO thread not running' description: "Mysql实例: 【{{ $labels.instance }}】, MySQL Slave IO thread not running"
- alert: MysqlSlaveSqlThreadNotRunning expr: mysql_slave_status_master_server_id > 0 and ON (instance) mysql_slave_status_slave_sql_running == 0 for: 1s labels: severity: critical annotations: title: 'MySQL Slave SQL thread not running' description: "Mysql实例: 【{{ $labels.instance }}】, MySQL Slave SQL thread not running"
- alert: MysqlSlaveReplicationLag expr: mysql_slave_status_master_server_id > 0 and ON (instance) (mysql_slave_status_seconds_behind_master - mysql_slave_status_sql_delay) > 30 for: 1m labels: severity: critical annotations: title: 'MySQL Slave replication lag' description: "Mysql实例: 【{{ $labels.instance }}】, MySQL replication lag"
- alert: MysqlInnodbLogWaits expr: rate(mysql_global_status_innodb_log_waits[15m]) > 10 for: 0m labels: severity: warning annotations: title: 'MySQL InnoDB log waits' description: "Mysql实例: 【{{ $labels.instance }}】, innodb log writes stalling"
- alert: mysql_table_locks expr: increase(mysql_global_status_table_locks_waited{job="mysqld_exporter"}[2m]) for: 0m labels: severity: warning annotations: title: 'MySQL table_locks' description: "Mysql实例: 【{{ $labels.instance }}】, mysql table locks"
相关链接
发表评论