32. Prometheus警报-配置

Alertmanager通过命令行标志和配置文件进行配置。命令行标志配置不可变的系统参数,配置文件定义抑制规则、通知路由和通知接收者。

可视化编辑器可以帮助建立路由树。

要查看所有可用的命令行标志,请运行 alertmanager -h

Alertmanager可以在运行时重新加载其配置。如果新配置格式不正确,则更改将不会应用,并且会记录错误。(可以使用amtool工具测试alertmanager.yml的语法,该工具默认在alertmanager的源代码包已存在,用法:./amtool check-config alertmanager.yml )

通过发送SIGHUP信号到alertmanager进程或使用HTTP POST请求/-/reload endpoint来触发配置重载,例如:curl -XPOST localhost:9093/-/reload (alertmanager服务默认监听9093端口)。

配置文件

要指定加载的配置文件,请使用该--config.file标志。

./alertmanager --config.file=simple.yml

该文件以YAML格式写入,由以下所述的格式定义。括号表示参数是可选的。对于非列表参数,值设置为指定的默认值。

通用占位符定义如下:

  • <duration>:持续时间 ,匹配正则表达式[0-9]+(ms|[smhdwy])
  • <labelname>:字符串,匹配正则表达式匹 [a-zA-Z_][a-zA-Z0-9_]*
  • <labelvalue>:unicode字符串
  • <filepath>:当前工作目录中的有效路径
  • <boolean>:布尔值,truefalse
  • <string>:常规字符串
  • <secret>:常规secret字符串,例如密码
  • <tmpl_string>:使用前已使用模板扩展的字符串
  • <tmpl_secret>:使用前已使用模板扩展的secret字符串

其他占位符分别指定。

提供的有效示例文件 显示了上下文中的用法。

全局配置指定在所有其他配置上下文中有效的参数。它们还用作其他配置部分的默认设置。

global:
  # 默认的SMTP From标头字段。
  [ smtp_from: <tmpl_string> ]
  #用于发送电子邮件的默认SMTP主机,包括端口号。端口号通常为25,对于基于TLS的SMTP(有时称为STARTTLS),端口号通常为587。
  #示例:smtp.example.org:587
  [ smtp_smarthost: <string> ]
  #标识SMTP服务器的默认主机名。
  [ smtp_hello: <string> | default = "localhost" ]
  #使用CRAM-MD5,LOGIN和PLAIN的SMTP身份验证。 如果为空,则Alertmanager不会对SMTP服务器进行身份验证。
  [ smtp_auth_username: <string> ]
  # 使用LOGIN和PLAIN的SMTP身份验证
  [ smtp_auth_password: <secret> ]
  #使用PLAIN的SMTP身份验证。
  [ smtp_auth_identity: <string> ]
  # 使用CRAM-MD5的SMTP身份验证。
  [ smtp_auth_secret: <secret> ]
  #默认的SMTP TLS要求。
  #请注意,Go不支持与远程SMTP端点的未加密连接。
  [ smtp_require_tls: <bool> | default = true ]

  # 用于Slack通知的API URL。
  [ slack_api_url: <secret> ]
  [ victorops_api_key: <secret> ]
  [ victorops_api_url: <string> | default = "https://alert.victorops.com/integrations/generic/20131114/alert/" ]
  [ pagerduty_url: <string> | default = "https://events.pagerduty.com/v2/enqueue" ]
  [ opsgenie_api_key: <secret> ]
  [ opsgenie_api_url: <string> | default = "https://api.opsgenie.com/" ]
  [ hipchat_api_url: <string> | default = "https://api.hipchat.com/" ]
  [ hipchat_auth_token: <secret> ]
  [ wechat_api_url: <string> | default = "https://qyapi.weixin.qq.com/cgi-bin/" ]
  [ wechat_api_secret: <secret> ]
  [ wechat_api_corp_id: <string> ]

  # 默认的HTTP客户端配置
  [ http_config: <http_config> ]

  #ResolveTimeout是警报管理器使用的默认值
  #不包括EndsAt,经过此时间后,如果尚未更新警报,则可以将警报声明为已解决。
  #这对Prometheus的警报没有影响,因为它们始终包含EndsAt。
  [ resolve_timeout: <duration> | default = 5m ]

  #从中读取自定义通知模板定义的文件。
  #最后一个组件可以使用通配符匹配器,例如 '模板/*.tmpl'。
templates:
  [ - <filepath> ... ]

# 路由树的根节点。
route: <route>

# 通知接收者列表。
receivers:
  - <receiver> ...

# 抑制规则列表。
inhibit_rules:
  [ - <inhibit_rule> ... ]

<route>

配置文件中的路由配置部分(route:)定义了路由树中的节点及其子节点。如果未设置,则其可选配置参数将从其父节点继承。

每个警报都会在已配置的顶级route处进入路由树,该顶级路由树必须能匹配所有报警(即没有任何已配置的匹配器)。然后,它遍历子节点。如果continue设置为false,它将在第一个匹配的子项之后停止。如果continue在匹配的节点上为true,则警报将继续与后续的同级节点进行匹配。如果警报与节点的任何子节点都不匹配(不匹配的子节点或不存在子节点),则根据当前节点的配置参数来处理警报。

 

##################### 修正线

[ receiver: <string> ]
#根据group_by传入的标签对报警进行分组,例如,针对cluster=A和alertname=LatencyHigh的多个警报将被分为一个组。
#要按所有可能的标签进行聚合,请使用特殊值'...'作为唯一的标签名称,例如:group_by:['...']
#这样可以有效地完全禁用聚合,按原样传递所有警报。 除非您的警报量非常低或上游通知系统执行自己的分组,否则这不太可能是您想要的。
[ group_by: '[' <labelname>, ... ']' ]

# 报警是否应继续匹配后续的同级节点。
[ continue: <boolean> | default = false ]

# 报警必须满足匹配某些标签才能匹配节点。
match:
  [ <labelname>: <labelvalue>, ... ]

# 报警必须满足标签匹配某些正则表达式才能匹配节点。
match_re:
  [ <labelname>: <regex>, ... ]

#最初发送一组警报通知的等待时间。 允许等待禁止警报到达或为同一组收集更多初始警报。 (通常0秒到几分钟。)
[ group_wait: <duration> | default = 30s ]

#在发送有关新报警的通知之前要等待多长时间,该通知已添加到已经发送了初始通知的一组警报中。 (通常5m或更多。)
[ group_interval: <duration> | default = 5m ]

#如果已经成功发送报警通知,则等待多长时间才能再次发送通知。 (通常3h或更长时间)。
[ repeat_interval: <duration> | default = 4h ]

# 零个或多个子路由。
routes:
  [ - <route> ... ]
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值