prometheus 中文文档
v2.17
v2.17
  • Prometheus 中文文档
  • introduction
    • 概述
    • 初识 Prometheus
    • 与替代品比较
    • 常见问题
    • 路线图
    • 相关资源
    • 相关术语
  • concepts
    • 数据模型
    • 数据指标类型
    • 作业和实例
  • prometheus
    • 快速开始
    • 安装
    • 配置
      • 配置
      • 定义记录规则
      • 告警规则
      • 模板示例
      • 模板参考
      • 规则的单元测试
    • 查询
      • Prometheus 查询
      • 运算符
      • 函数
      • 查询示例
      • HTTP API
    • 存储
    • 联合
    • 管理 API
    • Prometheus 2.0 迁移指南
    • API 稳定性保证
  • visualization
    • 表达式浏览器
    • Grafana 对 Prometheus 的支持
    • 控制台模板
  • operating
    • 安全模型
    • 集成
  • instrumenting
    • 客户端库
    • 编写客户端库
    • 推送数据指标
    • 数据导出及相关集成
    • 编写数据导出器
    • 公开的格式
  • alerting
    • 告警概述
    • Alertmanager
    • 配置
    • 发送告警
    • 通知模板参考
    • 通知模板示例
    • 管理 API
  • practices
    • 指标和标签命名
    • 控制台和仪表盘
    • 工具
    • Histogram and Summary
    • 告警
    • 记录规则
    • 什么时候使用 Pushgateway
    • 远程写调试
  • guides
    • 使用 cAdvisor 监控 docker 容器数据指标
    • 使用基于文件的服务发现来发现数据采集目标
    • 实现一个 Go 应用
    • 使用 Node Exporter 监控 Linux 主机指标
    • 使用基本身份验证保护 Prometheus API 和 UI 端点
    • 理解并使用 multi-target exporters 模式
    • 使用 TLS 加密 Prometheus API 和 UI 端点
    • 使用 Prometheus 查询日志
由 GitBook 提供支持
在本页
  • 数据结构
  • Data
  • Alert
  • KV
  • 函数

这有帮助吗?

  1. alerting

通知模板参考

上一页发送告警下一页通知模板示例

最后更新于5年前

这有帮助吗?

Prometheus 创建告警并将其发送到 Alertmanager,Alertmanager 随后根据标签将通知发送到不同的接收者。接收者可以是许多集成中的一种,包括: Slack, PagerDuty, 邮件或通过通用 Webhook 接口的自定义集成。

发送到接收方的通知是通过模板构造的。Alertmanager 带有默认模板,但也可以自定义。为避免混淆,必须注意 Alertmanager 模板与 不同,但是 Prometheus 模板还包括告警规则标签/注解中的模板。

Alertmanager 的通知模板基于 系统。请注意,某些字段被认定为文本,而其他字段则被评估为 HTML,这会影响转义。

数据结构

Data

data是传递给通知模板和 Webhook 推送的结构。

名称

类型

解释

Receiver

string

定义将通知发送到的接收者的名称(slack, email等)

Status

string

如果至少一个警报正在触发,则定义为 firing,否则定义为 resolved

Alerts

该组中所有告警对象的列表(参见下文)

GroupLabels

警报按指定标签分组

CommonLabels

所有告警共有的标签

CommonAnnotations

所有告警的通用注解集。用于获取有关警报的更多其他信息字符串

ExternalURL

string

Alertmanager 发送通知的反向链接

Alerts类型公开了过滤告警的功能:

  • Alerts.Firing返回此组中当前触发的告警对象的列表

  • Alerts.Resolved返回此组中已解决的告警对象的列表

Alert

Alert生成一个告警用于通知模板。

名称

类型

解释

Status

string

定义告警是 resolved 还是正在 firing

Labels

一组附加到告警的标签

Annotations

一组附加到告警的注解

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 方法

名称

参数

返回

解释

SortedPairs

-

Pairs(键/值字符串对的列表)

返回键/值对的排序列表

Remove

[]string

KV

返回没有给定键的键/值映射的副本

Names

-

[]string

返回 LabelSet 中所有标签名称

Values

-

[]string

返回 LabelSet 中所有标签值

函数

名称

参数

返回

注解

title

string

toUpper

string

将所有字符转换为大写.

toLower

string

将所有字符转换为小写.

match

pattern, string

正则表达式匹配.

reReplaceAll

pattern, replacement, text

join

sep string, s []string

safeHtml

text string

stringSlice

...string

以字符串切片的方式返回传递的字符串.

Go 模板还提供了

,每个单词的第一个字符大写

正则表达式替换, 未锚定.

, 连接的元素以创建单个字符串。分隔符字符串sep放置在结果字符串中的元素之间. (注意:参数顺序倒置以便在模板中更轻松地进行流水线.)

, 将字符串标记为HTML,不需要自动转义.

Prometheus 模板
Go 模板
默认函数
strings.Title
strings.ToUpper
strings.ToLower
Regexp.MatchString
Regexp.ReplaceAllString
strings.Join
html/template.HTML
Alert
KV
KV
KV
KV
KV