すべてのプロダクト
Search
ドキュメントセンター

:Grafana アラートの Log Service への取り込み (Grafana 8.0 以降)

最終更新日:Jun 23, 2026

Grafana は、アラート機能を使用できる GUI を提供します。Grafana でコンタクトポイントを追加すると、Grafana は Log Service のアラートシステムにアラートを送信できます。その後、アラートシステムは、アラートのノイズ除去やアラート通知の送信などの処理を行います。ご利用の Grafana のバージョンが 8.0 以降の場合は、このトピックの手順に従ってください。

前提条件

アラート取り込みアプリケーションが作成済みであること。詳細については、「アラート取り込み用の Webhook URL の設定」をご参照ください。

Grafana の設定

  1. Grafana コンソールにログインします。
  2. コンタクトポイントを作成します。
    1. 左側のナビゲーションウィンドウで、[Alerting] > [Contact points] を選択し、[New contact point] をクリックします。
    2. [Create contact point] ページで、次のパラメーターを設定します。
      パラメーター説明
      Name コンタクトポイントの名前。
      Contact point type コンタクトポイントのタイプ。[webhook] を選択します。
      Url コンタクトポイントの URL。この例では、Log Service のアラート取り込みシステムでアラート取り込みサービスとアラート取り込みアプリケーションを作成した後に生成される Webhook URL の完全な URL を入力します。詳細については、「Webhook URL の取得」をご参照ください。
    3. [Save contact point] をクリックします。
  3. コンタクトポイントを通知ポリシーに追加します。
    コンタクトポイントは、ルート通知ポリシーに追加するか、ルートを作成してそのルートに追加することができます。この例では、コンタクトポイントをルート通知ポリシーに追加します。
    1. [Notification policies] をクリックします。
    2. [Root policy - default for all alerts] セクションで、[Edit] をクリックします。
    3. [Default contact point] リストから、ステップ 2 で作成したコンタクトポイントを選択します。
    4. [Save] をクリックします。

Grafana アラート

次のサンプルコードは、Grafana アラートの例です:

{
    "receiver": "http",
    "status": "firing",
    "alerts":
    [
        {
            "status": "firing",
            "labels":
            {
                "alertname": "test"
            },
            "annotations":
            {
                "description": "test alert",
            },
            "startsAt": "2022-02-17T21:44:07.106902+08:00",
            "endsAt": "0001-01-01T00:00:00Z",
            "generatorURL": "http://localhost:3000/alerting/abcd/edit",
            "fingerprint": "65d7bbdb01ce6c93",
            "silenceURL": "http://localhost:3000/alerting/silence/new?alertmanager=grafana&matchers=alertname%3Dtest",
            "dashboardURL": "",
            "panelURL": "",
            "valueString": "[ metric='go_threads{instance=\"prometheus\", job=\"prometheus\"}' labels={__name__=go_threads, instance=prometheus, job=prometheus} value=15 ]"
        }
    ],
    "groupLabels":
    {},
    "commonLabels":
    {
        "alertname": "test"
    },
    "commonAnnotations":
    {
        "description": "test alert",
    },
    "externalURL": "http://localhost:3000/",
    "version": "1",
    "groupKey": "{}/{alertname=\"test\"}:{}",
    "truncatedAlerts": 0,
    "orgId": 1,
    "title": "[FIRING:1]  (test)",
    "state": "alerting",
    "message": "**Firing**\n\nValue: [ metric='go_threads{instance=\"prometheus\", job=\"prometheus\"}' labels={__name__=go_threads, instance=prometheus, job=prometheus} value=15 ]\nLabels:\n - alertname = test\nAnnotations:\n - description = test alert\nSource: http://localhost:3000/alerting/abcd/edit\nSilence: http://localhost:3000/alerting/silence/new?alertmanager=grafana&matchers=alertname%3Dtest\n"
}

フィールドマッピング

Grafana アラートが Log Service に取り込まれると、アラートはフィールドマッピングに基づいて Log Service のアラートに変換されます。次のサンプルコードは、Log Service アラートの例です:

{
    "aliuid": "{アラート取り込みアプリケーションが属する Alibaba Cloud アカウントの ID}",
    "alert_instance_id": "{自動的に生成されるアラートインスタンス ID}",
    "alert_id": "test",
    "alert_type": "sls_pub",
    "alert_name": "test",
    "region": "{アラートセンターが属するプロジェクトのリージョン}",
    "project": "{アラートセンターが属するプロジェクト}",
    "project_id": 0,
    "next_eval_interval": 0,
    "alert_time": 1645607565,
    "fire_time": 1645105447,
    "fire_results": null,
    "fire_results_count": 0,
    "resolve_time": 0,
    "status": "firing",
    "results": null,
    "labels":
    {},
    "annotations":
    {
        "__config_app__": "sls_pub_alert",
        "__pub_alert_app__": "{アラート取り込みアプリケーションの ID}",
        "__pub_alert_protocol__": "grafana8",
        "__pub_alert_region__": "{アラートが送信されるエンドポイントのリージョン}",
        "__pub_alert_service__": "{アラート取り込みサービスの ID}",
        "desc": "test alert",
        "fingerprint": "65d7bbdb01ce6c93",
        "silenceURL": "http://localhost:3000/alerting/silence/new?alertmanager=grafana&matchers=alertname%3Dtest",
        "valueString": "[ metric='go_threads{instance=\"prometheus\", job=\"prometheus\"}' labels={__name__=go_threads, instance=prometheus, job=prometheus} value=15 ]"
    },
    "severity": 6,
    "policy":
    {
        "alert_policy_id": "{アラート取り込みアプリケーションに指定されたアラートポリシー}",
        "action_policy_id": "{アラート取り込みアプリケーションに指定されたアクションポリシー}",
        "use_default": false,
        "repeat_interval": "{アラート取り込みアプリケーションに指定された繰り返し間隔}"
    },
    "template": null,
    "drill_down_query": "http://localhost:3000/alerting/abcd/edit",
}
次の表は、Grafana のアラートフィールドが Log Service のアラートフィールドにどのようにマッピングされるかを示しています。
Log Service Grafana 説明
aliuid N/A アラート取り込みアプリケーションに関連付けられている Alibaba Cloud アカウント ID。
alert_id alertname アラートルール ID。

Grafana アラートメッセージの labels フィールドに alertname フィールドが含まれている場合、alert_id の値は alertname フィールドの値になります。それ以外の場合は空です。

alert_type N/A アラートタイプ。値は sls_pub に固定されます。
alert_name alertname アラートルール名。

Grafana アラートメッセージの labels フィールドに alertname フィールドが含まれている場合、alert_namealertname フィールドの値に設定され、元のフィールドは削除されます。それ以外の場合は空です。

status status アラートステータス。
next_eval_interval N/A アラート評価間隔。値は 0 に固定されます。
alert_time N/A Log Service が Grafana アラートを受信したときのタイムスタンプ。
fire_time startsAt アラートがトリガーされた時間。
resolve_time endsAt アラートが解決された時間。

Grafana アラートメッセージの statusfiring の場合、resolve_time の値は 0 です。それ以外の場合、値は endsAt に対応するタイムスタンプです。

labels labels アラートラベル。

アラート取り込みアプリケーションの作成時に 情報処理 でタグ情報を追加すると、このタグ情報が labels フィールドに追加されます。

annotations annotations annotations は保持され、次のフィールドが追加されます:
  • config_app: "sls_pub_alert"
  • pub_alert_service: {アラート取り込みサービス ID}
  • pub_alert_app: {アラート取り込みアプリケーション ID}
  • pub_alert_protocol: "alert manager"
  • pub_alert_region: {アラートメッセージを受信するネットワークインターフェースのリージョン}
  • Description:

    Grafana アラートメッセージの annotations フィールドに descdescription、または summary フィールド (優先度の降順) が含まれている場合、desc フィールドの値はこれらのフィールドのマージされた値に設定され、元のフィールドは削除されます。

  • fingerprint: Grafana アラートのアノテーション内の fingerprint フィールドに対応します。: この値は、元の Grafana オブジェクト内のフィールドからマッピングされます。
  • silenceURL: Grafana アラートメッセージのアノテーションに含まれる silenceURL フィールド。: この値は、元の Grafana オブジェクトのフィールドからマップされます。
  • dashboardURL: Grafana アラートメッセージのアノテーションにある dashboardURL フィールドに対応します。: この値は、元の Grafana オブジェクトのフィールドからマッピングされます。
  • panelURL: Grafana アラートメッセージのアノテーションの panelURL フィールドに対応します。: この値は、元の Grafana オブジェクトの フィールドからマッピングされます。
  • valueString: Grafana アラートメッセージのアノテーションの valueString フィールド: この値は、元の Grafana オブジェクトの フィールドからマッピングされます。

アラート取り込みアプリケーションの作成時に 情報処理 でアノテーションを追加すると、そのアノテーションが annotations フィールドに追加されます。

severity severity アラートの重大度。
説明 アノテーションlabelsseverity フィールドの値を Log Service のアラート重大度レベルにマッピングします。どちらの場所にも フィールドが見つからない場合、アラートの重大度はデフォルトで「中」になります。詳細については、「アラート重大度」をご参照ください。
policy N/A アラート取り込みアプリケーションで設定されたアラートポリシー。詳細については、「ポリシー構造」をご参照ください。
project N/A アラートセンターを含む Log Service プロジェクト。詳細については、「プロジェクト」をご参照ください。
drill_down_query
  • generatorURL
  • externalURLgroupLabels および
Grafana でアラートをドリルダウンするための URL。
  • generatorURLdrill_down_querygeneratorURL フィールドが存在する場合、その値。
  • generatorURLgroupLabelsdrill_down_queryexternalURL`externalURL` が存在せず、`groupLabels` が空の場合、`drill_down_query` フィールドの値が使用されます。
  • generatorURLgroupLabelsdrill_down_querygroupLabelsexternalURLgeneratorURL がなく、groupLabels フィールドが空でない場合、この URL は drill_down_query フィールドと externalURL フィールドから構築されます。

この URL をクリックすると、Grafana のアラート管理ページに移動し、groupLabels フィールドの内容に一致するアラートメッセージが自動的に表示されます。