如何修改告警规则

为提高效率,请提供以下信息,问题描述清晰能够更快得到解决:

【TiDB 版本】tidb.4.0.8

【问题描述】alertmanager的global和receiver配置以及告警规则,在修改之后,执行tiup reload 就又变成默认设置了,这个怎么修改啊?


若提问为性能优化、故障排查类问题,请下载脚本运行。终端输出的打印结果,请务必全选并复制粘贴上传。

请问,你是如果修改配置的?

直接修改monitor/conf/tidb.rules.yml
image

tiup reload 会将文件覆盖为默认文件,所以你reload后,就会变为原始文件。

使用 tiup reload 重启 prometheus 的配置后,后重新生成 prometheus 的配置文件。
可以在 tiup reload 的结果中看到以下的结果:

  • Regenerate config prometheus -> 192.168.12.21:29090 … Done
    这个 prometheus 的配置文件是通过 /root/.tiup/storage/cluster/clusters/tidb-c2-v409/meta.yaml 文件生成的。
    meta.yaml 的文件是通过编辑的 TiDB Cluster 文件生成的。
    所以当 tiup 拓扑文件没有改变的时候,重新 reload 会根据拓扑文件里面的信息生成新的 prometheus 配置文件。导致覆盖了原有的修改。

如果需要在 Prometheus 上做定制化开发,建议您不要使用 tiup reload。
如果一定要使用 tiup reload 功能,您可以跳过 prometheus 组件,通过 tiup cluster -R 指定其他组件。
例如:
tiup cluster tidb-c2-v409 reload -R tidb,tikv,pd,grafana,alertmanager

好的,多谢老师:100:。我再试试

:+1:

Prometheus 不能跟alertmanager一样 映射配置文件吗

tiup 管理的 prometheus,可以指定自己的报警规则(rules) 配置, 其他的都是 tiup 管理的,可以通过拓扑文件指定,例如 remote_config, storage_retention, external_alertmanagers 等