prometheus的rules配置

说明:本文介绍prometheus中的规则配置;

规则说明

groups:
  - name: MySQLAlerts
    rules:
      - alert: MysqlDown
        expr: mysql_up == 0
        for: 0m
        labels:
          severity: critical
        annotations:
          summary: MySQL down (实例:{{ $labels.instance }})
          description: "MySQL 挂了: {{ $labels.instance }}\n  当前值:{{ $value }}\n  标签:{{ $labels }}"
        
        # `{{ $labels.instance }}`上使用了超过80%的MySQL连接。
      - alert: MysqlTooManyConnections(>80%)
        expr: max_over_time(mysql_global_status_threads_connected[1m]) / mysql_global_variables_max_connections * 100 > 80
        for: 2m
        labels:
          severity: warning
        annotations:
          summary: MySQL 连接数过多 (> 80%) (实例:{{ $labels.instance }})
          description: "{{ $labels.proj }}MySQL 的连接数超过了允许的 80% {{ $labels.instance }}\n  当前值:{{ $value }}\n  标签:{{ $labels }}"

如上(来自:Prometheus-Rules 实战),是关于MySQL的两条rule,分别判断MySQL服务是否宕机和连接数是否过多,当触发规则时会报警,将消息发给alertmanager,通知到应用(如钉钉、企业微信、邮箱)。

其中:

  • groups:规则组,命名MySQLAlerts,表示以下都是关于MySQL各项指标的规则;

  • name:规则组命名;

  • rules:各个规则;

  • alert:该条规则的名称;

  • expr:表达式,可写简单的指标判断表达式;

  • for:冷却时间,表示在该时间内不会再触发这个rule;0m,表示有符合表达式就触发,2m,表示触发后2分钟内之间不会再次触发;

  • labels -> severity:报警级别;

  • annotations -> summary:概要信息;

  • annotations -> description:描述信息;

写完之后,我们可以在prometheus的配置文件中,通过下面这个配置项引入规则文件。

在这里插入图片描述

rule文件需要和prometheus的配置文件放在同级目录。

在这里插入图片描述

设置完之后,重启prometheus,可以在页面上看到设置的rules;

在这里插入图片描述

其他应用

其他应用的rule,可以在下面这个Github仓库里找到;

这里面有几十个应用或服务器硬件的许多rules,可以拷贝下来直接引到自己的promethes里面。

在这里插入图片描述

我找到了的时候都感动哭了,世界上还是好心人多。

总结

本文介绍了prometheus的rules配置,以及一些应用的rules如何配置。

相关推荐

  1. PostgreSQL视图pg_rules

    2024-06-06 15:28:14       7 阅读
  2. C语言中Strict Aliasing Rule

    2024-06-06 15:28:14       36 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-06-06 15:28:14       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-06-06 15:28:14       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-06-06 15:28:14       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-06-06 15:28:14       20 阅读

热门阅读

  1. k8s-mysql主从部署

    2024-06-06 15:28:14       11 阅读
  2. 矩阵前缀和:找到窗口的*最多数量

    2024-06-06 15:28:14       8 阅读
  3. iOS hitTest 机制用处之二-----使用pointInside方法

    2024-06-06 15:28:14       10 阅读
  4. py之每日spider案例分享

    2024-06-06 15:28:14       8 阅读
  5. STM32_SPI

    STM32_SPI

    2024-06-06 15:28:14      8 阅读
  6. 什么是接地电阻柜呢?

    2024-06-06 15:28:14       9 阅读
  7. 解决QT QMessageBox 弹出需点击两次才能关闭问题

    2024-06-06 15:28:14       9 阅读
  8. delphi 3层源码

    2024-06-06 15:28:14       9 阅读