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

Simple Log Service:新しいアラートテンプレートのパラメーター

最終更新日:Mar 26, 2026

本トピックでは、新しいバージョンのアラートテンプレートに含まれる変数と、それらの参照方法について説明します。

参照構文

重要
  • 変数を参照する際は、その名前が完全に一致している必要があります。

    • 変数が存在しない場合、または誤って参照された場合、SLS ではデフォルトで空文字列に置き換えられます。

    • 参照される値がオブジェクトである場合、SLS では JSON 文字列に変換されます。

  • 変数名は英字、数字、およびアンダースコア (_) のみで構成され、先頭に数字を含めることはできません。

    • 変数名がこれらの規則に準拠している場合、ドット表記(例: {{alert.xxx}})を使用して値を取得できます。

    • 変数名がこれらの規則に準拠していない場合(例: __tag__:__namespace__ のような特殊文字を含む場合)、ブラケット表記を使用して値を取得する必要があります:{{alert.annotations["__tag__:__namespace__"] }}

アクションポリシーを構成する際には、アラートテンプレートを選択する必要があります。アラートテンプレートでは、アラート通知の本文および件名の内容が定義されます。本文 および 件名/件名 フィールドでは、{{ alert.xxx }} 構文を使用して変数を参照できます。SLS がアラート通知を送信する際に、本文 および 件名/件名 内の変数は、実際の値に置き換えられます。たとえば、{{ alert.project }} は、アラートルールを含むプロジェクトの名称に置き換えられます。

image

変数を直接参照するほか、制御フロー構造およびビルトイン関数を用いて、変数の操作および処理も可能です。テンプレート構文およびビルトイン関数の詳細については、「コンテンツテンプレート構文(新)」および「ビルトインテンプレート関数」をご参照ください。

アラート属性

パラメーター

説明

使用例

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

テストアラートルール

アラートルール {{ 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

現在の評価時刻。

int

1616744734

現在のアラート評価時刻は {{ alert.alert_time }} であり、{{ alert.alert_time | format_date }} の形式でフォーマットされます。

fire_time

アラートが初めてトリガーされた時刻。

int

1616059834

アラートは {{ alert.fire_time }} に初めてトリガーされ、{{ alert.fire_time | format_date }} の形式でフォーマットされます。

status

アラートステータス。

  • firing:アラートがトリガー中。

  • resolved:アラートが解決済み。

string

firing

アラートステータスは {{ alert.status }} であり、{{ alert.status | format_status }} の形式でフォーマットされます。

resolve_time

アラートの解決時刻。

  • アラートステータスが 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": "アラートタイトル","desc": "アラートの説明" }

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

results

アラート評価から得られたクエリおよび結果データを含む配列。データ構造の詳細については、「QueryData 構造」をご参照ください。

array

本トピック末尾の付録を参照してください。

最初のクエリの開始時刻は {{ alert.results[0].start_time }}、終了時刻は {{ alert.results[0].end_time }}、cnt の値は {{ 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 }})

ポリシー構造

以下の表は、policy 内で参照可能な変数を示しています。

パラメーター

説明

alert_policy_id

アラートポリシーの ID。

string

sls.test-alert

action_policy_id

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

string

sls.test-action

repeat_interval

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

string

4h

QueryData 構造

以下の表は、results 変数のフィールドを説明しています。

パラメーター

説明

store_type

ストレージタイプ。有効な値:

  • log:ログデータ。

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

  • meta:リソースデータ。

string

log

region

対象ストアのリージョン。

meta の場合、このフィールドは空になります。

string

cn-hangzhou

Project

対象ストアのプロジェクト。

meta の場合、このフィールドは空になります。

string

sls-test-alert

store

対象ストアの名称。

string

test-LogStore

query

クエリ文。

string

error | select count(1) as cnt

start_time

クエリ時間範囲の開始時刻(秒単位の UNIX タイムスタンプ)。

meta の場合、このフィールドは空になります。

int

1616741485

end_time

クエリ時間範囲の終了時刻(秒単位の UNIX タイムスタンプ)。

meta の場合、このフィールドは空になります。

int

1616745085

raw_results

最大 100 件のクエリ結果レコードを含む配列。

raw_results の値が 2 KB を超える場合、または単一フィールドの内容が 1 KB を超える場合、データは切り捨てられます。

array

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

raw_results_count

クエリによって返されたレコードの総数(100 を超える場合があります)。

int

20

fire_result

アラートをトリガーした結果セットの最初のレコード。

map

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

query_url

クエリ結果を表示するためのコンソール URL。

meta の場合、このフィールドは空になります。

string

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。

string

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

role_arn

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

string

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

よくある質問

付録

  • results 構造

    [{
        "store_type": "Logstore",
        "region": "中国 (杭州)",
        "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 アラート",
        "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"
            }
        ]
    }
  • アラートテンプレートの構成:

    - アラート ID: {{ alert.alert_id }}
    - アラート名: {{ alert.alert_name }}
    - プロジェクト: {{ alert.project }}
    - ステータス: {% if alert.status == "firing" %}FIRING{% else %}RESOLVED{% endif %}
    - ラベル:
    {%- for key, val in alert.labels.items() %}
        - {{ key }}: {{ val }}
    {%- endfor %}
    - クエリ: {{ alert.results[0].query }}
  • 出力結果:

    - アラート ID: test-alert
    - アラート名: PV/UV アラート
    - プロジェクト: project-1
    - ステータス: FIRING
    - ラベル:
        - app: nginx
        - host: host-1
    - クエリ: * | select count(*) as pv