Prometheus创建并向Alertmanager发送警报,然后Alertmanager根据标签向不同的接收者发送通知。 接收器可以是众多集成中的一种,包括:Slack,PagerDuty,电子邮件或通过通用webhook接口的自定义集成。

发送给接收者的通知是通过模板构建的。 Alertmanager附带默认模板,但也可以自定义。 为避免混淆,请务必注意Alertmanager模板与Prometheus中的模板不同,但Prometheus模板还包括警报规则标签/注释中的模板。

Alertmanager的通知模板基于Go模板系统。 请注意,某些字段将作为文本进行评估,而其他字段将作为HTML进行评估,这将影响转义。

一、数据

Data是传递给通知模板和webhook推送的结构。

Name Type Notes
Receiver string 定义通知将被发送到的接收者名称(松弛,电子邮件等)。
Status string 如果至少有一个警报被触发,则定义为触发,否则解析。
Alerts Alert 警报对象列表(见下文)。
GroupLabels KV 这些警报的标签按分组。
CommonLabels KV 所有警报共有的标签。
CommonAnnotations KV 所有警报的常用注释集。 用于有关警报的更长的其他信息串。
ExternalURL string 反向链接到发送通知的Alertmanager。
二、警报

Alert为通知模板保留一个警报。

Name Type Notes
Status string 定义警报是已解决还是当前正在触发。
Labels KV 要附加到警报的一组标签。
Annotations KV 警报的一组注释。
StartsAt time.Time 警报开始发射的时间。 如果省略,则当前时间由Alertmanager分配。
EndsAt time.Time 仅在已知警报结束时间时设置。 否则设置为自上次收到警报以来的可配置超时时间。
GeneratorURL string 一个反向链接,用于标识此警报的生成实体。
三、KV

KV是一组用于表示标签和注释的键/值字符串对。

type KV map[string]string

包含两个注释的注释示例:

{summary: "alert summary",description: "alert description",
}

除了直接访问存储为KV的数据(标签和注释)之外,还有用于排序,删除和查看LabelSet的方法:

KV方法

Name Arguments Returns Notes
SortedPairs - Pairs (list of key/value string pairs.) 返回键/值对的排序列表。
Remove []string KV 返回没有给定键的键/值映射的副本。
Names - []string 返回LabelSet中标签名称的名称。
Values - []string 返回LabelSet中的值列表。
四、函数

请注意Go模板也提供的默认函数。

Name Arguments Returns
title string strings.Title, 大写每个单词的第一个字符。
toUpper string strings.ToUpper, 将所有字符转换为大写。
toLower string strings.ToLower, 将所有字符转换为小写。
match pattern, string Regexp.MatchString. 使用Regex匹配字符串。
reReplaceAll pattern, replacement, text Regexp.ReplaceAllString Regexp替换,未经修复。
join sep string, s []string strings.Join, 连接s的元素以创建单个字符串。 分隔符字符串sep放在结果字符串中的元素之间。 (注意:参数顺序已反转,以便在模板中更容易管道化。)
safeHtml text string html/template.HTML, 将字符串标记为不需要自动转义的HTML。
五、链接

Prometheus官网地址:https://prometheus.io/
我的Github:https://github.com/Alrights/prometheus

Prometheus学习系列(四十)之报警模板参考相关推荐

  1. Prometheus学习系列(十五)之预警规则

    警报规则允许您基于Prometheus表达式语言表达式定义警报条件,并将有关触发警报的通知发送到外部服务. 每当警报表达式在给定时间点生成一个或多个向量元素时,警报将计为这些元素的标签集的活动状态. ...

  2. JSP学习笔记(四十九):抛弃POI,使用iText生成Word文档

    POI操作excel的确很优秀,操作word的功能却不敢令人恭维.我们可以利用iText生成rtf文档,扩展名使用doc即可. 使用iText生成rtf,除了iText的包外,还需要额外的一个支持rt ...

  3. JavaScript学习(四十九)—构造方法、原型、对象图解

    JavaScript学习(四十九)-构造方法.原型.对象图解

  4. JavaScript学习(四十八)—原型对象的增删改查

    JavaScript学习(四十八)-原型对象的增删改查 一.构造方法与原型对象的图解 二.型对象的增删改查 (一).什么是原型 每个函数都会有一个属性--prototype属性,这个属性都会有一个对象 ...

  5. JavaScript学习(四十六)—练习题

    JavaScript学习(四十六)-练习题 练习1 练习2

  6. JavaScript学习(四十五)—练习题

    JavaScript学习(四十五)-练习题 习题1 习题2:

  7. JavaScript学习(四十四)—in关键字的使用和for in循环遍历对象的属性

    JavaScript学习(四十四)-in关键字的使用和for in循环遍历对象的属性 一.in关键字的使用 作用:判断某个属性是否属于对象 格式:属性名称 in 对象名称 ; 返回值:如果返回的结果为 ...

  8. JavaScript学习(四十二)—利用工厂模式创建对象以及工厂模式创建对象的不足

    JavaScript学习(四十二)-利用工厂模式创建对象以及工厂模式创建对象的不足 一.利用工厂模式创建对象 工厂模式是JavaScript中的一种设计模式,它的作用是批量创建具有同种属性的对象. 格 ...

  9. JavaScript学习(四十)—字面量创建对象图解

    JavaScript学习(四十)-字面量创建对象图解 通过上面的图解我们可以知道: 数据在内存中存的地址永远都不相等的

  10. [jQuery学习系列四 ]4-Jquery学习四-事件操作

    [jQuery学习系列四 ]4-Jquery学习四-事件操作 前言: 今天看知乎偶然看到中国有哪些类似于TED的节目, 回答中的一些推荐我给记录下来了, 顺便也在这里贴一下: 一席 云集 听道 推酷 ...

最新文章

  1. 数据结构与算法:09 栈与递归
  2. python控制台输出颜色
  3. python自学平台-自学Python网站推荐 从入门到精通
  4. goodFeaturesToTrack函数
  5. 蔚来宣布部分车型涨价1万元
  6. vue-i18n和ElementUI国际化使用
  7. 集群节点数和分片数关系_离子晶体配位数与离子半径比的关系
  8. LAMP-----2、php-5.3.27编译安装
  9. UVA10284 POJ2512 Chessboard in FEN【国际象棋】
  10. 四大顶级开源网络管理工具详解
  11. 线性代数02 线性方程组的解的情况(矩阵的秩)
  12. 月薪12.8K,转行测试斩获3份过万offer,分享一些我的小秘招
  13. 基于Python的飞机票销售系统的设计和实现
  14. 我用Python模拟了谷爱凌的凌空一跃
  15. html表格垂直居中的CSS代码,使用3行CSS代码使任何元素垂直居中
  16. mysql unknown_mysql碰到unknown variable 'xxxx' 的解决方法
  17. ubuntu使用sudo su进入root报错Cannot execute /bin/csh: No such file or directory解决方法
  18. 截止目前,计算机考研调剂信息大全!
  19. 华为OD一次机试的记录
  20. 论文中的参考文献查重问题和注意事项

热门文章

  1. H5 页面适配所有 iPhone 和安卓机型的六个技巧
  2. 【FPGA】基于OV5640的 图像边沿检测
  3. Mac U盘安装High Sierra
  4. 苹果输入法怎么换行_现在还有没有必要学习五笔输入法呢
  5. 网易云信消息抄送php,消息功能-服务端API文档-IM即时通讯-网易云信开发文档
  6. Android 中设置指定语言
  7. Nginx✧虚拟主机资源静态化
  8. 084 php获取美元人民币汇率方法
  9. 小程序拼团商城系统开发
  10. 服务器安装torchvision库文件时报错EnvironmentError: [Errno 28] No space left on device的完美解决方法及思维过程