翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
テンプレートリファレンス
このドキュメントのトピックは、Grafana バージョン 9.x をサポートする Grafana ワークスペース向けです。
Grafana バージョン 10.x をサポートする Grafana ワークスペースについては、「Grafana バージョン 10 での作業」を参照してください。
Grafana バージョン 8.x をサポートする Grafana ワークスペースについては、「Grafana バージョン 8 での作業」を参照してください。
このセクションでは、テンプレートを作成するためのリファレンス情報を提供します。
テンプレートのデータ
メッセージテンプレートには、次のデータが渡されます。
名前 | 型 | メモ |
---|---|---|
|
文字列 |
コンタクトポイント (通知先) の名前。 |
|
文字列 |
少なくとも 1 つのアラートが発生している場合は「発生中」となり、それ以外の場合「解決済」となります。 |
|
アラート |
この通知に含まれるアラートオブジェクトのリスト (以下を参照)。 |
|
KeyValue |
これらのアラートがグループ化されたラベル。 |
|
KeyValue |
この通知に含まれるすべてのアラートに共通のラベル。 |
|
KeyValue |
この通知に含まれるすべてのアラートに共通する注釈。 |
|
文字列 |
通知の送信元である Grafana へのリンク。外部のアラートマネージャーを使用している場合、そのアラートマネージャーへのリンク。 |
Alerts
型には、返されたアラートをフィルタリングするための 2 つの関数があります。
-
Alerts.Firing
– 発生中のアラートのリストを返します。 -
Alerts.Resolved
– 解決済みのアラートのリストを返します。
アラート (型)
アラート型には、次のデータがあります。
名前 | 型 | メモ |
---|---|---|
ステータス |
文字列 |
|
ラベル |
KeyValue |
アラートに付与された一連のラベル。 |
注釈 |
KeyValue |
アラートに付与された一連の注釈。 |
値 | KeyValue | クラシック条件を含むすべての式の値 |
StartsAt |
time.Time |
アラートが発行された時刻。 |
EndsAt |
time.Time |
アラートの終了時刻がわかっている場合にのみ設定されます。それ以外の場合、最後にアラートを受信してから設定可能なタイムアウト期間が適用されます。 |
GeneratorURL |
文字列 |
Grafana または外部アラートマネージャーへのリンク。 |
SilenceURL |
文字列 |
アラートをサイレンスするリンク (このアラートのラベルがあらかじめ入力されています)。Grafana 管理のアラートのみ。 |
DashboardURL |
文字列 |
Grafana ダッシュボードへのリンク (アラートルールが Grafana に属している場合)。Grafana 管理のアラートのみ。 |
PanelURL |
文字列 |
Grafana ダッシュボードパネルへのリンク (アラートルールが Grafana に属している場合)。Grafana 管理のアラートのみ。 |
Fingerprint |
文字列 |
アラートの識別に使用するフィンガープリント。 |
ValueString |
文字列 |
アラート内の各削減された式のラベルと値を含む文字列。 |
ExtendedData
ExtendedData オブジェクトには、以下のプロパティが含まれています。
名前 | [Kind] (種類) | 説明 | 例 |
---|---|---|---|
レシーバー |
|
通知を送信するコンタクトポイントの名前。 |
|
ステータス |
|
ステータスは |
|
アラート |
|
この通知のすべての発生アラートと解決済みアラートのリスト。 |
|
発生アラート |
|
この通知のすべての発生アラートのリスト。 |
|
解決済みアラート |
|
この通知で解決されたすべてのアラートのリスト。 |
|
GroupLabels |
|
これらのアラートをこの通知にグループ化するラベル。 |
|
CommonLabels |
|
この通知のすべてのアラートに共通するラベル。 |
|
CommonAnnotations |
|
この通知のすべてのアラートに共通する注釈。 |
|
ExternalURL |
|
この通知を送信した Grafana ワークスペースまたはアラートマネージャーへのリンク。 |
|
KeyValue 型
KeyValue
型は、キー (ラベル) 値 (注釈) の文字列を組み合わせたものです。
KeyValue
として保存されたデータに直接アクセスするメソッドだけでなく、データをソート、削除、変換するメソッドも備えています。
名前 | 引数 | 戻り値 | メモ | 例 |
---|---|---|---|---|
SortedPairs |
キーと値の文字列のソート済みのリスト |
|
||
削除 |
[]string |
KeyValue |
指定したキーを除いたキー/値のマップのコピーを返します。 |
|
名前 |
[]string |
ラベル名のリスト |
|
|
値 |
[]string |
ラベル値のリスト |
|
[時間]
時間は Go time
Monday, 1st January 2022 at 10:00AM
形式で出力するには、次のテンプレートを作成します。
{{ .StartsAt.Format "Monday, 2 January 2006 at 3:04PM" }}
Go の時間形式に関するリファレンスは、こちら
テンプレート関数
テンプレート関数を使用すると、ラベルと注釈を処理して動的に通知を生成できます。以下の機能を使用できます。
名前 | 引数の型 | 戻り型 | 説明 |
---|---|---|---|
|
数値または文字列 |
文字列 |
メトリクスプレフィックスを使用して、数値をより読み取り可能な形式に変換します。 |
|
数値または文字列 |
文字列 |
humanize と同様に、1000 ではなく 1024 を基準にします。 |
|
数値または文字列 |
文字列 |
時間を秒単位のより読みやすい形式に変換します。 |
|
数値または文字列 |
文字列 |
比率の値を 100 分の 1 の形に変換します。 |
|
数値または文字列 |
文字列 |
Unix のタイムスタンプを秒単位のより読みやすい形式に変換します。 |
|
文字列 |
文字列 |
strings.Title を使用すると、各単語の最初の文字が大文字になります。 |
|
文字列 |
文字列 |
strings.ToUpper を使用すると、文字列がすべて大文字に変換されます。 |
|
文字列 |
文字列 |
strings.ToLower を使用すると、文字列がすべて小文字に変換されます。 |
|
パターン、テキスト |
ブール値 |
regexp.MatchString を使用すると、アンカーなしでの正規表現の一致テストを実行できます。 |
|
パターン、置換、テキスト |
文字列 |
Regexp.ReplaceAllString を使用すると、アンカーなしでの正規表現による置換が実行できます。 |
|
文字列 - |
文字列 |
指定された式とデータソースに対するグラフィカルビューへのパスを返します。 |
|
文字列 - |
文字列 |
指定された式とデータソースに対するタブ形式ビューへのパスを返します。 |
|
[]interface{} |
map[string]interface{} |
オブジェクトのリストを arg0、arg1 などのキーを持つマップに変換します。複数の引数をテンプレートに渡す場合、この関数を使用します。 |
|
なし |
文字列 |
外部 URL を表す文字列を返します。 |
|
なし |
文字列 |
外部 URL のパスを返します。 |
次の表に、各関数の使用例を紹介します。
関数 | TemplateString | Input | 予想 |
---|---|---|---|
humanize |
{ humanize $value } |
1234567.0 |
1.235M |
humanize1024 |
{ humanize1024 $value } |
1048576.0 |
1Mi |
humanizeDuration |
{ humanizeDuration $value } |
899.99 |
14 分 59 秒 |
humanizePercentage |
{ humanizePercentage $value } |
0.1234567 |
12.35% |
humanizeTimestamp |
{ humanizeTimestamp $value } |
1435065584.128 |
2015-06-23 13:19:44.128 +0000 UTC |
title |
{ $value | title } |
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 |
{ match "a+" $labels.instance } |
aa |
真 |
reReplaceAll |
{{ reReplaceAll "localhost:(.*)" "my.domain:$1" $labels.instance }} |
localhost:3000 |
my.domain:3000 |
graphLink |
{{ graphLink "{\"expr\": \"up\", \"datasource\": \"gdev-prometheus\"}" }} |
/explore?left=["now-1h","now","gdev-prometheus",{"datasource":"gdev-prometheus","expr":"up","instant":false,"range":true}] |
|
tableLink |
{{ tableLink "{\"expr\":\"up\", \"datasource\":\"gdev-prometheus\"}" }} |
/explore?left=["now-1h","now","gdev-prometheus",{"datasource":"gdev-prometheus","expr":"up","instant":true,"range":false}] |
|
args |
{{define "x"}}{{.arg0}} {{.arg1}}{{end}}{{template "x" (args 1 "2")}} |
1 2 |
|
externalURL |
{ externalURL } |
http://localhost/path/prefix |
|
pathPrefix |
{ pathPrefix } |
/path/prefix |