通知テンプレートを作成する - Amazon Managed Grafana

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

通知テンプレートを作成する

このドキュメントトピックは、Grafana バージョン 9.x をサポートする Grafana ワークスペース向けに設計されています。

Grafana バージョン 10.x をサポートする Grafana ワークスペースについては、「」を参照してくださいGrafana バージョン 10 での作業

Grafana バージョン 8.x をサポートする Grafana ワークスペースについては、「」を参照してくださいGrafana バージョン 8 での作業

再利用可能な通知テンプレートを作成して、連絡先に送信します。

通知テンプレートには 1 つ以上のテンプレートを追加できます。

通知テンプレート名は一意である必要があります。同じ通知テンプレートまたは異なる通知テンプレートに、同じ名前のテンプレートを 2 つ持つことはできません。、、、 __subject __text_values_list __text_alert_list default.title などのデフォルトテンプレートと同じ名前のテンプレートを定義しないでくださいdefault.message

連絡先タブには、通知テンプレートのリストが表示されます。

通知テンプレートの作成

通知テンプレートを作成するには
  1. テンプレートの追加 をクリックします。

  2. などの通知テンプレートの名前を選択しますemail.subject

  3. テンプレートの内容をコンテンツフィールドに書き込みます。

    例:

    {{ if .Alerts.Firing -}} {{ len .Alerts.Firing }} firing alerts {{ end }} {{ if .Alerts.Resolved -}} {{ len .Alerts.Resolved }} resolved alerts {{ end }}
  4. [Save](保存)をクリックします。

    {{ define "email.subject" }} ( email.subjectはテンプレートの名前) と {{ end }} は、コンテンツの先頭と末尾に自動的に追加されます。

複数のテンプレートを含む通知テンプレートを作成するには:
  1. テンプレートの追加 をクリックします。

  2. 通知テンプレート全体の名前を入力します。例えば email です。

  3. コンテンツフィールドに各テンプレートを書き込みます。これには、各テンプレートの最初{{ define "name-of-template" }}と最後に {{ end }} と が含まれます。通知テンプレート内の各テンプレートには、 email.subjectや など、わかりやすい名前を使用できますemail.message。この場合、上記で入力した通知テンプレートの名前は再利用しないでください。

    以下のセクションでは、作成する可能性のあるテンプレートの詳細な例を示します。

  4. [Save](保存)をクリックします。

E メールの件名のテンプレートの作成

次の例のように、発声アラートと解決されたアラートの数を含む E メールの件名のテンプレートを作成します。

1 firing alerts, 0 resolved alerts
E メールの件名のテンプレートを作成するには
  1. 次の内容email.subjectで というテンプレートを作成します。

    {{ define "email.subject" }} {{ len .Alerts.Firing }} firing alerts, {{ len .Alerts.Resolved }} resolved alerts {{ end }}
  2. テンプレートは、 templateキーワードを使用して件名フィールドに配置して、コンタクトポイント統合を作成するときに使用します。

    {{ template "email.subject" . }}

E メールのメッセージのテンプレートの作成

次の例のように、すべての発声アラートと解決されたアラートの概要を含む E メールのメッセージのテンプレートを作成します。

There are 2 firing alerts, and 1 resolved alerts Firing alerts: - alertname=Test 1 grafana_folder=GrafanaCloud has value(s) B=1 - alertname=Test 2 grafana_folder=GrafanaCloud has value(s) B=2 Resolved alerts: - alertname=Test 3 grafana_folder=GrafanaCloud has value(s) B=0
E メールのメッセージのテンプレートを作成するには
  1. コンテンツに email.message_alertと の 2 つのテンプレートemailを使用して、 という名前の通知テンプレートを作成しますemail.message

    email.message_alert テンプレートは、email.messageテンプレートに E メールの構造が含まれている間、発動したアラートと解決されたアラートのラベルと値を出力するために使用されます。

    {{- define "email.message_alert" -}} {{- range .Labels.SortedPairs }}{{ .Name }}={{ .Value }} {{ end }} has value(s) {{- range $k, $v := .Values }} {{ $k }}={{ $v }}{{ end }} {{- end -}} {{ define "email.message" }} There are {{ len .Alerts.Firing }} firing alerts, and {{ len .Alerts.Resolved }} resolved alerts {{ if .Alerts.Firing -}} Firing alerts: {{- range .Alerts.Firing }} - {{ template "email.message_alert" . }} {{- end }} {{- end }} {{ if .Alerts.Resolved -}} Resolved alerts: {{- range .Alerts.Resolved }} - {{ template "email.message_alert" . }} {{- end }} {{- end }} {{ end }}
  2. テンプレートは、 templateキーワードを使用して Text Body フィールドに配置して、コンタクトポイント統合を作成するときに使用します。

    {{ template "email.message" . }}

Slack メッセージのタイトルのテンプレートの作成

次の例のように、発声アラートと解決されたアラートの数を含む Slack メッセージのタイトルのテンプレートを作成します。

1 firing alerts, 0 resolved alerts
Slack メッセージのタイトルのテンプレートを作成するには
  1. 次の内容slack.titleで というテンプレートを作成します。

    {{ define "slack.title" }} {{ len .Alerts.Firing }} firing alerts, {{ len .Alerts.Resolved }} resolved alerts {{ end }}
  2. テンプレートは、 templateキーワードを使用して Title フィールドに配置して、コンタクトポイント統合を作成するときに使用します。

    {{ template "slack.title" . }}

Slack メッセージの内容のテンプレートの作成

ラベル、注釈、ダッシュボード URL など、すべての発音アラートと解決されたアラートの説明を含む Slack メッセージの内容のテンプレートを作成します。

1 firing alerts: [firing] Test1 Labels: - alertname: Test1 - grafana_folder: GrafanaCloud Annotations: - description: This is a test alert Go to dashboard: https://example.com/d/dlhdLqF4z?orgId=1 1 resolved alerts: [firing] Test2 Labels: - alertname: Test2 - grafana_folder: GrafanaCloud Annotations: - description: This is another test alert Go to dashboard: https://example.com/d/dlhdLqF4z?orgId=1
Slack メッセージの内容のテンプレートを作成するには
  1. コンテンツに slack.print_alertと の 2 つのテンプレートslackを使用して、 という名前のテンプレートを作成しますslack.message

    slack.print_alert テンプレートには通知の構造が含まれている間、slack.messageテンプレートはラベル、注釈、DashboardURL を出力するために使用されます。

    {{ define "slack.print_alert" -}} [{{.Status}}] {{ .Labels.alertname }} Labels: {{ range .Labels.SortedPairs -}} - {{ .Name }}: {{ .Value }} {{ end -}} {{ if .Annotations -}} Annotations: {{ range .Annotations.SortedPairs -}} - {{ .Name }}: {{ .Value }} {{ end -}} {{ end -}} {{ if .DashboardURL -}} Go to dashboard: {{ .DashboardURL }} {{- end }} {{- end }} {{ define "slack.message" -}} {{ if .Alerts.Firing -}} {{ len .Alerts.Firing }} firing alerts: {{ range .Alerts.Firing }} {{ template "slack.print_alert" . }} {{ end -}} {{ end }} {{ if .Alerts.Resolved -}} {{ len .Alerts.Resolved }} resolved alerts: {{ range .Alerts.Resolved }} {{ template "slack.print_alert" .}} {{ end -}} {{ end }} {{- end }}
  2. テンプレートは、 templateキーワードを使用して Text Body フィールドに配置して、コンタクトポイント統合を作成するときに使用します。

    {{ template "slack.message" . }}

共有テンプレートを使用して E メールと Slack の両方のテンプレートを作成する

E メールや Slack など、コンタクトポイントごとに個別の通知テンプレートを作成する代わりに、同じテンプレートを共有できます。

例えば、この件名の E メールを送信し、このタイトルの Slack メッセージを送信する場合は1 firing alerts, 0 resolved alerts、共有テンプレートを作成できます。

共有テンプレートを作成するには
  1. 次の内容common.subject_titleで という名前のテンプレートを作成します。

    {{ define "common.subject_title" }} {{ len .Alerts.Firing }} firing alerts, {{ len .Alerts.Resolved }} resolved alerts {{ end }}
  2. E メールの場合は、E メールの連絡先統合の件名フィールドからテンプレートを実行します。

    {{ template "common.subject_title" . }}
  3. Slack の場合は、Slack コンタクトポイント統合のタイトルフィールドからテンプレートを実行します。

    {{ template "common.subject_title" . }}

通知テンプレートの使用

コンタクトポイントで テンプレートを使用して、通知をカスタマイズします。

コンタクトポイントの作成時にテンプレートを使用するには
  1. アラートメニューからコンタクトポイントを選択すると、既存のコンタクトポイントのリストが表示されます。

  2. コンタクトポイントの追加 を選択します。または、編集するコンタクトポイントの横にある編集アイコン (ペン) を選択して、既存のコンタクトポイントを編集することもできます。

  3. メッセージ件名 などの 1 つ以上のフィールドに、使用するテンプレートを入力します。テンプレートを入力するには、 の形式を使用します。template_name{{ template "template_name" . }}、使用するテンプレートの名前に置き換えます。

  4. コンタクトポイントの保存 をクリックします。