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

Simple Log Service:アラートテンプレートの変数

最終更新日:Jun 22, 2026

このトピックでは、新しいアラートテンプレートで使用できる変数とその使い方について説明します。

変数参照

重要
  • 変数名は完全一致である必要があります。

    • 変数が存在しない場合、または参照が無効な場合、デフォルトで空文字列になります。

    • 参照されるオブジェクトは JSON 文字列に変換されます。

  • 変数名には文字、数字、アンダースコア (_) を含めることができますが、数字で始めることはできません。

    • 変数名がこれらのルールに従う場合、ドット表記を使用してその値を取得できます。たとえば、 {{alert.xxx}} のように記述します。

    • 変数名に __tag__:__namespace__ などの特殊文字が含まれている場合、ブラケット表記を使用してその値を取得する必要があります。たとえば、 {{alert.annotations["__tag__:__namespace__"]}} のように記述します。

アクションポリシーを設定するときは、アラートテンプレートを選択する必要があります。アラートテンプレートは、通知内容と件名を定義します。送信内容 および 件名/タイトル フィールドでは、{{ alert.xxx }} 構文を使用してテンプレート変数を参照できます。Simple Log Service (SLS) がアラート通知を送信すると、送信内容 および 件名/タイトル の変数をその値に置き換えます。たとえば、Simple Log Service (SLS) は {{ alert.project }} を、アラートルールを含む Project の名前に置き換えます。

たとえば、DingTalk チャネルのアラートテンプレートでは、[件名]SLS Alert に設定できます。 [内容] では、変数 {{ alert.aliuid }}{{ alert.project }}{{ alert.alert_name }}、および {{ alert.severity }} を使用して、それぞれアカウント ID、プロジェクト名、アラートルール名、重要度を取得できます。

変数は直接参照するだけでなく、制御フローと組み込み関数を使用して変数データを処理することもできます。 テンプレートの構文と組み込み関数の詳細については、アラートテンプレートの構文 (新規) および 組み込みテンプレート関数 をご参照ください。

アラート属性

パラメーター

説明

タイプ

参照例

aliuid

プロジェクトの Alibaba Cloud アカウント ID です。

string

117918634953****

ユーザー {{ alert.aliuid }} のアラートルールがトリガーされました。

alert_instance_id

アラートをトリガーしたインスタンスの ID です。

string

ee16a8f435485f3f-5be6b81edc520-3d6****

インスタンス ID は {{ alert.alert_instance_id }} です。

alert_id

プロジェクト内のアラートルールのユニーク ID です。

string

alert-12345

アラートルール ID は {{ alert.alert_id }} です。

alert_name

アラートルールの名前です。

string

Test alert rule

アラートルール {{ alert.alert_name }} がトリガーされました。

alert_type

アラートタイプです。

  • sls_alert :アラートモニタリングルールによってトリガーされたアラートです。

  • sls_pub :外部システムからのオープンアラートです。

  • sls_ml :インテリジェント巡回によってトリガーされたアラートです。

string

sls_alert

アラートタイプは {{ alert.alert_type }} で、{{ alert.alert_type | format_type }} のようにフォーマットされます。

region

アラートがトリガーされたリージョンです。

string

cn-hangzhou

アラートはリージョン {{ alert.region }} でトリガーされました。

project

アラートルールが属するプロジェクトです。

string

my-project

プロジェクト {{ alert.project }} でアラートルールがトリガーされました。

next_eval_interval

次の評価までの間隔 (秒) です。

int

300

次の評価は {{ alert.next_eval_interval }} 秒後です。

alert_time

現在の評価の UTC タイムスタンプです。

int

1616744734

現在の評価時間は {{ alert.alert_time }} で、{{ alert.alert_time | format_date }} のようにフォーマットされます。

fire_time

アラートが最初に発生したときの UTC タイムスタンプです。

int

1616059834

アラートは {{ alert.fire_time }} に最初に発生し、{{ alert.fire_time | format_date }} のようにフォーマットされます。

status

アラートの現在のステータスです。

  • firing :アラートはアクティブです。

  • resolved :アラートは解決済みです。

string

firing

アラートステータスは {{ alert.status }} で、{{ alert.status | format_status }} のようにフォーマットされます。

resolve_time

アラートが解決されたときの UTC タイムスタンプです。

  • アラートステータスが firing の場合、値は 0 です。

  • アラートステータスが resolved の場合、値は解決時間です。

int

0

アラートは {{ alert.resolve_time }} に解決され、{{ alert.resolve_time | format_date }} のようにフォーマットされます。

severity

アラートの重大度です。

  • 10 :クリティカル

  • 8 :高

  • 6 :中

  • 4 :低

  • 2 :レポート

int

10

アラートの重大度は {{ alert.severity }} で、{{ alert.severity | format_severity }} のようにフォーマットされます。

labels

ユーザー定義のキーと値からなるラベルのセットです。

map

{"env":"test"}

アラートのラベルは {{ alert.labels | to_list }} です。

annotations

ユーザー定義のキーと値からなるアノテーションのセットです。

map

{ "title": "Alert title","desc": "Alert description" }

アラートのアノテーションは {{ alert.annotations | to_list }} です。

results

クエリパラメーターと中間結果の配列です。この変数の値の詳細については、「QueryData の構造」をご参照ください。

array

このトピックの最後にある付録をご参照ください。

最初のクエリの開始時間は {{ alert.results[0].start_time }}、終了時間は {{ alert.results[0].end_time }}、カウントは {{ alert.results[0].fire_result.cnt }}、クエリは {{ alert.results[0].query }} です。

fire_results

アラートをトリガーしたデータです。これは集合演算の結果です。最大 100 行が返されます。

fire_results 変数のサイズが 2 KB を超えるか、単一フィールドのコンテンツが 1 KB を超える場合、データは切り捨てられます。切り捨てられたデータの処理方法については、「アラートが多すぎるログに対してトリガーされ、通知に不完全な情報が表示される場合の対処方法」をご参照ください。

array

このトピックの最後にある付録をご参照ください。

アラートをトリガーしたデータは {{ alert.fire_results | to_json }} です。

fire_results_count

アラートをトリガーしたデータ行の総数です。この値は、たとえばデカルト積操作の後など、100 を超えることがあります。

int

3

アラートは {{ alert.fire_results_count }} 件のデータ行によってトリガーされました。

condition

アラートをトリガーした評価式です。この式では、変数は実際のトリガー値に置き換えられ、角括弧 [] で囲まれます。フォーマットは Count:Expression;Condition:Expression です。

string

Count:[5] > 3;Condition:[example.com]=='example.com'

アラートの評価式は {{ alert.condition }} です。

raw_condition

変数が実際の値に置き換えられる前の、元の評価式です。フォーマットは Count:Expression;Condition:Expression です。

string

Count:__count__ > 3;Condition:host=='example.com'

元の評価式は {{ alert.raw_condition }} です。

policy

アラートポリシーまたはアクションポリシーです。この変数の値の詳細については、「ポリシーの構造」をご参照ください。

map

このトピックの最後にある付録をご参照ください。

アラートポリシー ID は {{ alert.policy.alert_policy_id }} です。

dashboard

アラートに関連付けられているダッシュボードの名前です。

string

mydashboard

関連付けられているダッシュボードは {{ alert.dashboard }} です。

alert_url

アラート詳細ページの URL です。

string

https://sls.console.alibabacloud.com/lognext/project/test-xxxx/alert/alert-1617164106-940166

アラートの URL は {{ alert.alert_url }} です。

query_url

最初のクエリに対応する検索ページの URL です。

string

https://sls.console.alibabacloud.com/lognext/project/test-xxx/logsearch/test-alert-access?encode=base64&endTime=1617175989&queryString=KiB8IHNlbGVjdCBjb3VudCgxKSBhcyBjbn****&queryTimeType=99&startTime=1617175089

最初のクエリページの URL は {{ alert.query_url }} です。

alert_history_dashboard_url

アラート履歴統計ダッシュボードの URL です。

string

https://sls.console.alibabacloud.com/lognext/project/test-xx/dashboard/internal-alert-analysis

アラート履歴統計ダッシュボードの URL は {{ alert.alert_history_dashboard_url }} です。

dashboard_url

アラートに関連付けられているダッシュボードの URL です。

string

https://sls.console.alibabacloud.com/next/project/myproject/dashboard/mydashboard

関連付けられているダッシュボードの URL は {{ alert.dashboard_url }} です。

fingerprint

アラートフィンガープリントです。詳細については、「アラートフィンガープリントに基づくアラートの重複排除」をご参照ください。

string

478325709134bc5c

アラートフィンガープリントは {{ alert.fingerprint }} です。

signin_url

コンソールにログインせずにアラートの詳細を表示するための URL です。詳細については、「ログインせずにアラートの詳細を表示」をご参照ください。

string

https://sls.console.alibabacloud.com/console/AlertAjax/slsSignIn.json?token=xxxx

[詳細を表示]({{ alert.signin_url }})

ポリシーの構造

次の表に、ポリシーで使用可能な変数を示します。

パラメーター

説明

タイプ

値の例

alert_policy_id

アラートポリシーの ID です。

文字列

sls.test-alert

action_policy_id

アラートルールに設定されたアクションポリシーの ID です。 この変数は、アラートルールが動的アクションポリシーを使用する場合にのみ利用可能です。

文字列

sls.test-action

repeat_interval

アクティブなアラートに対する通知の繰り返し間隔です。 この変数は、アラートルールが動的アクションポリシーを使用する場合にのみ利用可能です。

文字列

4h

クエリデータの構造

この表では、results 変数で使用できる変数について説明します。

パラメーター

説明

store_type

ストレージタイプです。有効な値は次のとおりです。

  • log:ログデータ。

  • metric:メトリクスデータ。

  • meta:リソースデータ。

文字列

log

リージョン

送信先ストアのリージョンです。

store_type の値が meta の場合、この変数は空になります。

文字列

cn-hangzhou

プロジェクト

送信先ストアのプロジェクトです。

store_type の値が meta の場合、この変数は空になります。

文字列

sls-test-alert

ストア

送信先ストアの名前です。

文字列

test-LogStore

クエリ

クエリ文です。

文字列

error | select count(1) as cnt

start_time

UTC タイムスタンプ形式のクエリ開始時刻です。

store_type の値が meta の場合、この変数は空になります。

整数

1616741485

終了時刻

UTC タイムスタンプ形式のクエリ終了時刻です。

store_type の値が meta の場合、この変数は空になります。

整数

1616745085

未加工の結果

最大 100 行を含む、クエリ結果の配列です。

raw_results 変数が 2 KB を超えるか、結果のフィールドが 1 KB を超えた場合、超過したデータは切り捨てられます。

配列

[{
    "host": "example.com",
    "slbid": "slb-02",
    "status": "200"
}, {
    "host": "example.com",
    "slbid": "slb-01",
    "status": "200"
}]

生の検索結果数

結果セット内の行の総数です。100 を超えることもあります。

整数

20

fire_result

アラートトリガー結果の最初のレコードです。結果セットに複数のレコードが含まれている場合でも、このパラメーターには最初のレコードのみが含まれます。

マップ

{
    "host": "example.com",
    "slbid": "slb-02",
    "status": "200"
}

query_url

コンソールのクエリページの URL です。

store_type の値が meta の場合、この変数は空になります。

文字列

https://sls.console.alibabacloud.com/lognext/project/test-xxx/logsearch/test-alert-access?encode=base64&endTime=1617175989&queryString=KiB8IHNlbGVjdCBjb3VudCgxKSBhcy*******&queryTimeType=99&startTime=1617175089

dashboard_url

クエリに関連するダッシュボードの URL です。

文字列

https://sls.console.alibabacloud.com/next/project/myproject/dashboard/mydashboard

role_arn

サービスロールの Alibaba Cloud リソースネーム (ARN) です。

文字列

acs:ram::117918634953****:role/aliyunslsalertmonitorrole

よくある質問

付録

  • results のサンプル:

    [{
        "store_type": "log",
        "region": "cn-hangzhou",
        "project": "sls-alert-test",
        "store": "test",
        "query": "* | select count(1) as cnt",
        "start_time": 1616741485,
        "end_time": 1616745085,
        "dashboard_id": "mydashboard",
        "raw_results": [{
            "cnt": "4"
        }],
        "raw_result_count": 1,
        "fire_result": {
            "cnt": "4"
        },
        "truncated": false,
        "role_arn": ""
    }]
  • fire_results のサンプル:

    [{
        "host": "example.com",
        "host__1": "example.com",
        "pv": "836",
        "slbid": "slb-02",
        "status": "200"
    }, {
        "host": "example.com",
        "host__1": "example.com",
        "pv": "836",
        "slbid": "slb-02",
        "status": "200"
    }]
  • policy のサンプル:

    {
        "alert_policy_id": "sls.test-alert",
        "action_policy_id": "sls.test-action",
        "repeat_interval": "5m0s"
    }

この例では、新しいコンテンツテンプレートを使用して通知内容を定義します。

  • アラートコンテンツ:

    {
        "alert_id": "test-alert",
        "alert_name": "PV/UV Alert",
        "project": "project-1",
        "status": "firing",
        "severity": 6,
        "labels": {
            "app": "nginx",
            "host": "host-1"
        },
        "results": [
            {
                "project": "project-1",
                "logstore": "logstore-1",
                "query": "* | select count(*) as pv"
            },
            {
                "project": "project-2",
                "logstore": "logstore-2",
                "query": "* | select count(distinct user_id) as uv"
            }
        ]
    }
  • アラートテンプレートの設定:

    - Alert ID: {{ alert.alert_id }}
    - Alert Name: {{ alert.alert_name }}
    - Project: {{ alert.project }}
    - Status: {% if alert.status == "firing" %}FIRING{% else %}RESOLVED{% endif %}
    - Labels:
    {%- for key, val in alert.labels.items() %}
        - {{ key }}: {{ val }}
    {%- endfor %}
    - Query: {{ alert.results[0].query }}
  • 出力結果:

    - Alert ID: test-alert
    - Alert Name: PV/UV Alert
    - Project: project-1
    - Status: FIRING
    - Labels:
        - app: nginx
        - host: host-1
    - Query: * | select count(*) as pv