zoukankan      html  css  js  c++  java
  • 自定义告警模板

    默认情况下Alertmanager使用了系统自带的默认通知模板,模板源码可以从https://github.com/prometheus/alertmanager/blob/master/template/default.tmpl获得。
    Alertmanager的通知模板基于Go的模板系统。Alertmanager也支持用户定义和使用自己的模板,一般来说有两种方式可以选择。

    第一种,基于模板字符串。用户可以直接在Alertmanager的配置文件中使用模板字符串,例如:

    receivers:
    - name: 'slack-notifications'
      slack_configs:
      - channel: '#alerts'
        text: 'https://internal.myorg.net/wiki/alerts/{{ .GroupLabels.app }}/{{ .GroupLabels.alertname }}'
    

    第二种方式,自定义可复用的模板文件。例如,可以创建自定义模板文件custom-template.tmpl,如下所示:

    {{ define "slack.myorg.text" }}https://internal.myorg.net/wiki/alerts/{{ .GroupLabels.app }}/{{ .GroupLabels.alertname }}{{ end}}
    

    通过在Alertmanager的全局设置中定义templates配置来指定自定义模板的访问路径:

    # Files from which custom notification template definitions are read.
    # The last component may use a wildcard matcher, e.g. 'templates/*.tmpl'.
    templates:
      [ - <filepath> ... ]
    

    在设置了自定义模板的访问路径后,用户则可以直接在配置中使用该模板:

    receivers:
    - name: 'slack-notifications'
      slack_configs:
      - channel: '#alerts'
        text: '{{ template "slack.myorg.text" . }}'
    templates:
    - '/etc/alertmanager/templates/myorg.tmpl'
    
  • 相关阅读:
    访客登录方案设计与应用
    VS Code下载
    dockerfile COPY命令失效
    mysql排序字段值相等时,分页数据重复
    go使用json包Marshal方法得到异常结果[123 125]
    Mysql知识点概览
    dockercompose安装
    docker安装
    Shell脚本执行报错:Syntax error: "(" unexpected
    二进制数的位运算,角色权限,多种账号来源
  • 原文地址:https://www.cnblogs.com/sanduzxcvbnm/p/13344193.html
Copyright © 2011-2022 走看看