通知模板


告警通知使用的是默认模版,因为它已经编译到二进制包了,所以我们不需要额外配置。如果我们想自定义模版,这又该如何配置呢?

Alertmanager 默认使用的通知模板可以从 alertmanager/default.tmpl at main · prometheus/alertmanager · GitHub

获取,Alertmanager 的通知模板是基于 Golang 的模板系统,当然也支持用户自定义和使用自己的模板。

第一种方式是基于模板字符串,直接在 Alertmanager 的配置文件中使用模板字符串,如下所示:

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

直接在配置文件中可以使用一些模板字符串,比如获取 {{ .GroupLabels }} 下面的一些属性。

另外一种方法就是直接修改官方默认的模板,此外也可以自定义可复用的模板文件,比如针对 email 的模板,我们可以创建一个名为 template_email.tmpl 的自定义模板文件,如下所示:

apiVersion: v1
kind: ConfigMap
metadata:name: alert-confignamespace: kube-mon
data:config.yml: |-global:  # 全局配置......route:  # 路由......templates:  # 增加 templates 配置,指定模板文件- '/etc/alertmanager/template_email.tmpl'receivers:  # 接收器- name: 'email'email_configs:- to: '517554016@qq.com'send_resolved: truehtml: '{{ template "email.html" . }}' # 此处通过 html 指定模板文件中定义的 email.html 模板# 下面定义 email.html 必须和上面指定的一致,注释不能写进模板文件中template_email.tmpl: |-{{ define "email.html" }}  {{- if gt (len .Alerts.Firing) 0 -}}{{ range .Alerts }}@报警<br><strong>实例:</strong> {{ .Labels.instance }}<br><strong>概述:</strong> {{ .Annotations.summary }}<br><strong>详情:</strong> {{ .Annotations.description }}<br><strong>时间:</strong> {{ (.StartsAt.Add 28800e9).Format "2006-01-02 15:04:05" }}<br>{{ end }}{{ end -}}<br>{{- if gt (len .Alerts.Resolved) 0 -}}{{ range .Alerts }}<br>@恢复<br><strong>实例:</strong> {{ .Labels.instance }}<br><strong>信息:</strong> {{ .Annotations.summary }}<br><strong>恢复:</strong> {{ (.StartsAt.Add 28800e9).Format "2006-01-02 15:04:05" }}<br>{{ end }}{{ end -}}{{- end }}

在 Alertmanager 配置中通过 templates 属性来指定我们自定义的模板路径,这里我们定义的 template_email.tmpl 模板会通过 Configmap 挂载到 /etc/alertmanager 路径下,模板中通过 {{ define "email.html" }} 定义了一个名为 email.html 的命名模板,然后在 email 的接收器中通过 email_configs.html 来指定定义的命名模板即可。更新上面 Alertmanager 的配置对象,重启 Alertmanager 服务,然后等待告警发出,即可看到我们如下所示自定义的模板信息:

Alertmanager 通知模板相关推荐

  1. 制度罚则--上线结果通知模板

    本文在研发组织管理中的位置: 研发组织管理--制度&罚则--上线结果通知模板 目的 1.将上线的结果周知到干系人,使相关人员能知道上线是否成功,上线过程是否顺利,有无遗留问题需要跟进. 2.次 ...

  2. 考研英语二小作文 通知模板 夏令营

    通知模板 格式要求 第一段 第二段 第三段

  3. Zabbix告警通知模板

    告警通知模板: 告警主机:{HOSTNAME1} 告警时间:{EVENT.DATE} {EVENT.TIME} 告警等级:{TRIGGER.SEVERITY} 告警对象:{TRIGGER.KEY1} ...

  4. 端午节员工放假通知怎么写?端午放假通知模板范文保存到便签上

    端午节马上就要到了,2022年的端午节放假时间是公历6月3日.4日.5日共三天时间,并且没有其他调休安排.有不少公司在端午节放假之前,都是要提醒发出放假通知的,那么端午员工放假通知应该怎么写呢? 其实 ...

  5. 监控服务(新增)错误日志脚本并发送DingDing|邮件通知模板

    文章目录 1.监控模板 2.使用脚本 3.效果 4.如何安装DingDing和邮件服务器 5.拓展 1.监控模板 该模板支持 (1)DingDing告警与邮件告警 (2)自定义监控日志的黑名单与白名单 ...

  6. 定义zabbix_action报警通知模板

    报警:{ITEM.NAME} 主机:{HOST.NAME} 故障时间:{EVENT.DATE} {EVENT.TIME} 报警时间:{DATE} {TIME} 故障持续:{EVENT.AGE} 级别: ...

  7. Jenkins邮件通知模板(Git修改版)

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  8. 运维监控系列(15)-Alertmanager添加163邮箱、钉钉、微信告警通知功能

    163邮箱 可用通过邮件方式进行告警通知的发送,接着上篇文档,我们配置发送邮件告警方式. 1. 设置163邮箱 发送邮件,需要smtp邮件服务器,首先需要对网易邮箱进行设置. 首先登陆163邮箱,进入 ...

  9. .NET Core 小程序开发零基础系列(2)——小程序服务通知(模板消息)

    基于上一篇文件".NET Core 小程序开发零基础系列(1)--开发者启用并校验牵手成功"的反映,个人觉得效果很不错,大家对公众号开发还是有很大需求的,同时也收到了很多同学的问题 ...

  10. 五一劳动节放假通知的模板(通用版5篇)

    ​五一假期马上就要来了,整理了关于如何写公司五一劳动节放假通知的模板内容: 五一劳动节放假通知模板一: 全体员工: 五一劳动节来临之际,根据国家办公厅公布的<20xx年节假日安排的通知>的 ...

最新文章

  1. Celery 使用(一)
  2. Docker中部署项目到容器
  3. bootstrap-select采坑
  4. transmac使用方法_Mac苹果电脑降级方法?
  5. 计算机专业实践试题,计算机专业实践综合试题答案..doc
  6. NLP将迎来黄金十年,7个案例带你入门(附Python代码)
  7. 【立即报名】解码AI大杀器:华为云GPU+Tensorflow 容器实战
  8. sanic set up
  9. 【运动学】基于matlab GUI模拟鱼类目标追击问题【含Matlab源码 166期】
  10. ol xyz 加载天地图_OpenLayers 3 之 加载天地图
  11. centos6查看运行服务器,centos如何查看端口是否开放_网站服务器运行维护,centos,端口...
  12. 摸爬滚打DirectX11_day_11——三维天空
  13. linux git rabit,Linux 安装 RabbitMQ
  14. 文法去除空产生式_文法的二义性和化简
  15. ninja源码下载及编译(Win10+VS2019)
  16. Python实现简单电话簿
  17. Ristretto—SqueezeNet示例详解
  18. UR机器人(1)-安装和设置
  19. vc调试多线程程序的方法
  20. 论文精读(一)landsat时间序列变化检测

热门文章

  1. Error staring Tomcat Cannot connect to VM错误解决办法
  2. Java语言基础03-标识符、关键字、字面值、变量、数据类型
  3. V社线下沙龙·深圳站——12.05(周六)
  4. stm32 CAN通信 TJA1040
  5. SQL Server 2019下载及安装详细教程
  6. 计算机d盘可以格式化吗,能将电脑的D盘直接格式化了吗
  7. 计算机刷新定义,刷新计数器
  8. JVM 内存分析神器 MAT: Shallow Heap Vs Retained Heap 你理解的对吗?
  9. 【OpenGL ES】EGL简介
  10. python 求特征值特征向量 numpy.linalg.eig()