模板参考 - Amazon Managed Grafana

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

模板参考

本文档主题专为支持 Grafana 9.x 版本的 Grafana 工作空间而设计。

有关支持 Grafana 版本 10.x 的 Grafana 工作空间,请参阅。在 Grafana 版本 10 中工作

有关支持 Grafana 8.x 版本的 Grafana 工作空间,请参阅。在 Grafana 版本 8 中工作

本节提供创建模板的参考信息。

模板数据

以下数据将传递到消息模板。

名称 Type 注意

Receiver

字符串

要向其发送通知的联系点的名称。

Status

字符串

如果至少有一个警报正在触发,则触发,否则已解决。

Alerts

提醒

此通知中包含的警报对象列表(见下文)。

GroupLabels

KeyValue

这些警报按标签进行分组。

CommonLabels

KeyValue

此通知中包含的所有警报的通用标签。

CommonAnnotations

KeyValue

此通知中包含的所有警报的通用注释。

ExternalURL

字符串

返回发送通知的 Grafana 的链接。如果使用外部警报管理器,请返回指向此警报管理器的链接。

Alerts类型公开了两个用于筛选返回的警报的函数。

  • Alerts.Firing— 返回触发警报列表。

  • Alerts.Resolved— 返回已解决警报的列表。

警报(类型)

警报类型包含以下数据。

名称 Type 注意

Status

字符串

firingresolved

标签

KeyValue

附在警报上的一组标签。

注释

KeyValue

警报上附加的一组注释。

KeyValue 所有表达式的值,包括经典条件

StartsAt

time.time

警报开始触发的时间。

EndsAt

time.time

仅在已知警报结束时间时才进行设置。否则,设置为自上次收到警报以来可配置的超时时间。

生成器网址

字符串

指向 Grafana 或外部警报管理器的反向链接。

silenceURL

字符串

用于将警报静音的链接(预先填写了此警报的标签)。仅适用于 Grafana 管理的警报。

DashboardURL

字符串

如果警报规则属于一个,则链接到 grafana 仪表板。仅适用于 Grafana 管理的警报。

面板网址

字符串

如果警报规则属于 grafana 仪表板面板,则链接到。仅适用于 Grafana 管理的警报。

指纹

字符串

可用于识别警报的指纹。

ValueString

字符串

包含警报中每个简化表达式的标签和值的字符串。

ExtendedData

该 ExtendedData 对象包含以下属性。

名称 Kind 描述 示例

接收方

string

发送通知的联系人的姓名。

{{ .Receiver }}

Status

string

状态是 firing if at least one alert is firing, otherwise resolved.

{{ .Status }}

提醒

[]Alert

此通知中所有触发警报和已解决警报的列表。

There are {{ len .Alerts }} alerts

触发警报

[]Alert

此通知中所有触发警报的列表。

There are {{ len .Alerts.Firing }} firing alerts

已解决的警报

[]Alert

此通知中所有已解决的警报列表。

There are {{ len .Alerts.Resolved }} resolved alerts

GroupLabels

KeyValue

将这些警报分组到他的通知中的标签。

{{ .GroupLabels }}

CommonLabels

KeyValue

此通知中所有警报的通用标签。

{{ .CommonLabels }}

CommonAnnotations

KeyValue

此通知中所有警报的通用注释。

{{ .CommonAnnotations }}

外部网址

string

发送此通知的 Grafana 工作区或警报管理器的链接。

{{ .ExternalURL }}

KeyValue 键入

KeyValue类型是一组表示标签和注释的键/值字符串对。

除了可以直接访问存储为的数据外KeyValue,还有一些方法可以对数据进行排序、删除和转换。

名称 参数 返回值 注意 示例

SortedPairs

键和值字符串对的排序列表

{{ .Annotations.SortedPairs }}

删除

[] 字符串

KeyValue

返回不包含给定键的键/值映射的副本。

{{ .Annotations.Remove "summary" }}

名称

[] 字符串

标签名称列表

{{ .Names }}

[] 字符串

标签值列表

{{ .Values }}

时间

时间来自 Go time套餐。您可以用多种不同的格式打印时间。例如,要以以下格式打印警报触发的时间Monday, 1st January 2022 at 10:00AM,请编写以下模板:

{{ .StartsAt.Format "Monday, 2 January 2006 at 3:04PM" }}

你可以在这里找到 Go 的时间格式的参考。

模板函数

使用模板函数,您可以处理标签和注释以生成动态通知。以下功能可用。

名称 参数类型 返回类型 描述

humanize

数字或字符串

字符串

使用指标前缀将数字转换为更具可读性的格式。

humanize1024

数字或字符串

字符串

就像 Humanize 一样,但使用 1024 而不是 1000 作为基础。

humanizeDuration

数字或字符串

字符串

将以秒为单位的持续时间转换为更具可读性的格式。

humanizePercentage

数字或字符串

字符串

将比率值转换为 100 的分数。

humanizeTimestamp

数字或字符串

字符串

将 Unix 时间戳以秒为单位转换为更具可读性的格式。

title

字符串

字符串

Strings.title,将每个单词的第一个字符大写。

toUpper

字符串

字符串

字符串。 ToUpper,将所有字符转换为大写。

toLower

字符串

字符串

字符串。 ToLower,将所有字符转换为小写。

match

图案、文本

布尔值

regexp。 MatchString 测试未锚定的正则表达式匹配。

reReplaceAll

图案、替换、文本

字符串

Regexp。 ReplaceAllString 正则表达式替换,未锚定。

graphLink

字符串-带exprdatasource字段的 JSON 对象

字符串

返回给定表达式和数据源的 Explore 中图形视图的路径。

tableLink

字符串-带exprdatasource字段的 JSON 对象

字符串

返回给定表达式和数据源的 Explore 中表格视图的路径。

args

[] 接口 {}

地图 [字符串] 接口 {}

将对象列表转换为带有键的地图,例如 arg0、arg1。使用此函数将多个参数传递给模板。

externalURL

一点也不

字符串

返回一个表示外部 URL 的字符串。

pathPrefix

一点也不

字符串

返回外部 URL 的路径。

下表显示了使用每个函数的示例。

函数 TemplateString 输入 预期

人性化

{人性化 $value}

1234567.0

1.235M

人性化1024

{Humanize1024 $value}

1048576.0

1Mi

人性化持续时间

{HumanizeDuration $value}

899.99

14m 59s

人性化百分比

{人性化百分比 $value}

0.1234567

12.35%

人性化时间戳

{HumanizetimeStamp $value}

1435065584.128

2015-06-23 13:19:44.128 +0000 UTC

title

{$value | 标题}

aa bB cc

Aa Bb Cc

toUpper

{$value | toupper}

aa bB cc

AA BB CC

toLower

{$value | toLower}

aa bB cc

aa bb cc

match

{匹配 “a+” $labels.instance}

aa

true

reReplaceAll

{{ reReplaceAll “localhost :( .*)” “我的.domain:$1" $labels.instance}}

本地主机:3000

我的.domain:3000

GraphL

{{GraphLink “{\ “expr\”:\ “up\”,\ “datasource\”:\ “gdev-prometheus\"}”}}

/探索? left= [“now-1h”、“now”、“gdev-prometheus”、{“datasource”: “gdev-prometheus”、“expr”: “up”、“instant”: false、“range”: true}]

TableLink

{{TableLink “{\" expr\”:\ “up\”,\ “datasource\”:\ “gdev-prometheus\"}”}}

/探索? left= [“now-1h”、“now”、“gdev-prometheus”、{“datasource”: “gdev-prometheus”、“expr”: “up”、“instant”: true、“range”: false}]

args

{{定义 “x”}} {{.arg0}} {{.arg1}} {{end}} {{模板 “x” (args 1 “2")}}}

1 2

外部网址

{externalURL}

http://localhost/path/prefix

路径前缀

{路径前缀}

/路径/前缀