

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

# 模板参考
<a name="v10-alerting-template-reference"></a>

****  
本文档主题专为支持 **Grafana 10.x 版本**的 Grafana 工作区而设计。  
对于支持 Grafana 9.x 版本的 Grafana 工作区，请参阅[使用 Grafana 版本 9](using-grafana-v9.md)。  
对于支持 Grafana 8.x 版本的 Grafana 工作区，请参阅[使用 Grafana 版本 8](using-grafana-v8.md)。

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

**警报（类型）**

警报类型包含以下数据。


| Name | 类型 | 说明 | 示例 | 
| --- | --- | --- | --- | 
|  Status  |  字符串  |  `firing` 或 `resolved`。  | \$1\$1 .Status \$1\$1 | 
|  标签  |  KeyValue  |  附加到警报的一组标签。  | \$1\$1 .Labels \$1\$1 | 
|  Annotations  |  KeyValue  |  附加到警报的一组注释。  | \$1\$1 .Annotations \$1\$1 | 
| 值 | KeyValue | 所有表达式的值，包括经典条件 | \$1\$1 .Values \$1\$1 | 
|  StartsAt  |  time.Time  |  警报开始触发的时间。  | \$1\$1 .StartsAt \$1\$1 | 
|  EndsAt  |  time.Time  |  仅在知道警报结束时间时设置。否则，设置为从收到最后一次警报的时间起算的可配置的超时周期。  | \$1\$1 .EndsAt \$1\$1 | 
|  GeneratorURL  |  字符串  |  指向 Grafana 或外部 Alertmanager 的返回链接。  | \$1\$1 .GeneratorURL \$1\$1 | 
|  SilenceURL  |  字符串  |  指向静默警报的链接（其中预填了此警报的标签）。仅适用于 Grafana 管理的警报。  | \$1\$1 .SilenceURL\$1\$1 | 
|  DashboardURL  |  字符串  |  指向 Grafana 控制面板的链接（适用于警报规则属于 Grafana 控制面板的情况）。仅适用于 Grafana 管理的警报。  | \$1\$1 .DashboardURL \$1\$1 | 
|  PanelURL  |  字符串  |  指向 Grafana 控制面板中面板的链接（适用于警报规则属于 Grafana 控制面板中面板的情况）。仅适用于 Grafana 管理的警报。  | \$1\$1 .PanelURL \$1\$1 | 
|  指纹  |  字符串  |  可用于识别警报的指纹。  | \$1\$1 .Fingerprint \$1\$1 | 
|  ValueString  |  字符串  |  该字符串包含警报中每个简化表达式的标签和值。  | \$1\$1 .ValueString \$1\$1 | 

 **ExtendedData**

该 ExtendedData 对象包含以下属性。


| Name | 类型 | 说明 | 示例 | 
| --- | --- | --- | --- | 
|  接收方  |  `string`  |  发送通知的联系点名称。  |  `{{ .Receiver }}`  | 
|  Status  |  `string`  |  如果至少触发一个警报，则状态为 `firing`，否则为 `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 }}`  | 
|  ExternalURL  |  `string`  |  指向发送此通知的 Grafana 工作区或 Alertmanager 的链接。  |  `{{ .ExternalURL }}`  | 

**KeyValue type**

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

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


| Name | 参数 | 返回值 | 注意 | 示例 | 
| --- | --- | --- | --- | --- | 
|  SortedPairs  |    |  键值字符串对的排序列表  |    | `{{ .Annotations.SortedPairs }}` | 
|  删除  |  []string  |  KeyValue  |  返回不带给定键 Key/Value 的地图副本。  | `{{ .Annotations.Remove "summary" }}` | 
|  名称  |    |  []string  |  名称列表  | `{{ .Names }}` | 
|  值  |    |  []string  |  值的列表。  | `{{ .Values }}` | 

**时间**

时间来自 Go [https://pkg.go.dev/time#Time](https://pkg.go.dev/time#Time) 包。您可以用多种不同的格式打印时间。例如，要以 `Monday, 1st January 2022 at 10:00AM` 格式打印警报触发的时间，请编写以下模板：

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

您可以在[此处](https://pkg.go.dev/time#pkg-constants)找到 Go 的时间格式参考。