本ドキュメントでは、使用可能なテンプレート変数と、変数の参照方法について説明します。

参照方法

アクションポリシーを設定する場合、アラートテンプレートを選択する必要があります。 テンプレートは、アラート通知の内容と件名を定義するために使用されます。 ContentSubject のパラメーターを指定する場合、 ${fieldName} 構文を使用してテンプレート変数を参照できます。 アラート通知の送信前に、件名または内容の変数が実際の値に置き換えられます。 たとえば、 ${Project} はアラートルールが属するプロジェクトの名前に置き換えられます。.
重要 有効な変数を参照する必要があります。 参照する変数が存在しないか無効である場合、その変数は空の文字列として処理されます。 変数がオブジェクトタイプの値を参照する場合、その値は JSON 文字列に変換されます。

利用可能な変数と参照例

次の表に、使用可能な変数と、これらの変数を参照する方法を示します。
変数 説明 サンプル値 参照の例
aliuid ユーザーが属する Alibaba Cloud アカウントの ID です。 1234567890 アラートは Alibaba Cloud アカウント ${Aliuid} に対してトリガーされます。
alert_instance_id アラートをトリガーするインスタンスの ID です。 ee16a8f435485f3f-5be6b81edc520-3d69233 インスタンス ID は ${alert_instance_id} です。
project アラートルールが属するプロジェクトです。 my-project ${Project} プロジェクトでアラートがトリガーされます。
alert_id アラートルールの ID です。 ID はプロジェクト内で一意です。 0fdd88063a611aa114938f9371daeeb6-1671a52eb23 アラートルール ID は ${alert_id} です。
alert_type
  • sls_alert:アラートが Log Service のアラートサービスによって生成されることを示します。
  • sls_pub:アラートが外部アラートサービスによって生成されることを示します。
sls_alert アラートタイプは ${alert_type} です。
alert_name アラートルールの名前です。 new2 ${AlertName} アラートルールがトリガーされます。
next_eval_interval 次の評価までの間隔です。 900 次の評価は ${next_eval_interval} 秒後に実行されます。
alert_time 評価の実行日時です。 1616744734 評価は ${alert_time} に実行されます。
fire_time 初回のアラートルールがトリガーされた日時です。 1616059834 初回のアラートルールは、${fire_time} にトリガーされます。
status アラートのステータスです。 有効な値には、firing と resolved があります。 firing アラートステータスは ${status} です。
resolve_time アラートの解除日時です。
  • アラートステータスが firing の場合、この値は 0 になります。
  • アラートステータスが resolved の場合、この値は特定の日時になります。
0 アラートは ${resolve_time} に解除されます。
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": ""
}
]
最初のクエリ文をクエリする時間範囲は、${results[0].start_time} 〜 ${results[0].end_time} です。 count フィールドの値は ${results[0].fire_result.count} です。
この例では、 0 はクエリ文のシリアル番号を示します。 クエリ文のシリアル番号は、クエリ文の結果をプロットするグラフのシリアル番号と同じです。 詳細については、「 グラフのシリアル番号の表示方法」をご参照ください。
labels タグのリストです。 {"env":"test"} アラートタグは ${labels} です。
annotations 注釈のリストです。 { "title": "Alert title","desc": "Alert description"} アラートの注釈は ${annotations} です。
severity アラートの重大度です。 有効な値は、10 (重大)、8 (高)、6 (中)、4 (低) 、2 (報告) です。 10 アラートの重大度は ${severity} です。
policy アラートポリシーまたはアクションポリシーです。 詳細については、「ポリシー変数のデータ構造」をご参照ください。
{"alert_policy_id": "sls.test-alert","action_policy_id": "sls.test-action","use_default": false,"repeat_interval": "6m0s"}
アラートポリシー ID は ${policy.alert_policy_id} です。
region アラートルールが属するリージョンです。 cn-hangzhou アラートルールが属するリージョンは ${region} です。
drill_down_query ドリルダウン分析のクエリ文です。 カスタムアラートの場合、この値は空です。 この変数は、ログ監査サービス、コストマネージャー、ログセンターのアラートテンプレートに適用できます。 * | select count(1) as cnt なし
alert_url アラートの URL です。 https://sls.console.aliyun.com/lognext/project/test-xxxx/alert/alert-1617164106-940166 アラート URL は ${alert_url} です。
query_url クエリ統計の最初のクエリページの URL です。 https://sls-stg.console.aliyun.com/lognext/project/test-xxx/logsearch/test-alert-access?encode=base64&endTime=1617175989&queryString=KiB8IHNlbGVjdCBjb3VudCgxKSBhcyBjbnQ%3D&queryTimeType=99&startTime=1617175089 クエリ統計の最初のクエリページの URL は ${query_url} です。
alert_history_dashboard_url アラート履歴統計の URL です。 https://sls.console.aliyun.com/lognext/project/test-xx/dashboard/internal-alert-analysis アラート履歴統計の URL は $ {alert_history_dashboard_url} です。
condition アラートルールのトリガー条件です。 トリガー条件の変数は、アラートをトリガーする値に置き換えられます。 各値は、角かっこ [ ]で囲まれます。 書式: Count: 数量式; Condition: 一致する式 Count:[5] > 3;Condition:[www.mro.mock.com]=='www.mro.mock.com' アラートルールのトリガー条件は ${condition} です。
raw_condition アラートルールの元のトリガー条件です。 トリガー条件の変数は実際の値に置き換えられません。 書式: Count: 数量式; Condition: 一致する式 Count:__count__ > 3;Condition:host=='www.mro.mock.com' 元のトリガー条件は ${raw_condition} です。
dashboard アラートルールが関連付けられているダッシュボードの ID です。 mydashboard アラートルールは ${dashboard} ダッシュボードに関連付けられています。
Dashboard_url アラートルールが関連付けられているダッシュボードの URL です。 https://sls.console.aliyun.com/next/project/myproject/dashboard/mydashboard アラートルールが関連付けられているダッシュボードの URL は ${dashboard_url} です。
fire_results アラートをトリガーするデータです。 最大 100 件のデータレコードが表示されます。 [{"host":"www.xhu.mock.com","host__1":"www.iks.mock.com","pv":"836","slbid":"slb-02","status":"200"},{"host":"www.ykw.mock.com","host__1":"www.iks.mock.com","pv":"836","slbid":"slb-02","status":"200"},{"host":"www.mro.mock.com","host__1":"www.iks.mock.com","pv":"836","slbid":"slb-02","status":"200"},{"host":"www.amh.mock.com","host__1":"www.iks.mock.com","pv":"836","slbid":"slb-02","status":"200"},{"host":"www.uua.mock.com","host__1":"www.ue.mock.com","pv":"780","slbid":"slb-01","status":"200"}] アラートをトリガーするデータは ${fire_results} です。
fire_results_count アラートをトリガーするデータレコードの総数です。 値は 100 より大きい場合があります。たとえば、2 セットのデータレコードに対してデカルト積の操作を実行する場合です。 3 アラートをトリガーするデータレコードの総数は ${fire_results_count} です。

ポリシー変数のデータ構造

フィールド フィールドの説明
alert_policy_id アラートポリシーの ID です。 sls.test-alert
action_policy_id アラートルールで指定されているアクションポリシーの ID です。 このフィールドは、アラートポリシーを動的アクションポリシーに関連付ける場合にのみ使用できます。 sls.test-action
repeat_interval 定期アラートの間隔です。 このフィールドは、アラートポリシーをアクションポリシーに関連付ける場合にのみ使用できます。 4h

結果変数のデータ構造

次の表では、結果変数のフィールドについて説明します。

フィールド フィールドの説明 例:
role_arn サービスにリンクされたロールです。 acs:ram::1234567890:role/aliyunslsalertmonitorrole
store_type ストレージタイプです。
  • log: Log Service のクエリ文
  • metric: Log Service の時系列データ
  • meta: リソースデータ
log
region ターゲットデータベースが配置されているリージョンを選択します。 store_type フィールドの値が meta の場合、このフィールドは空です。 cn-hangzhou
project ターゲットデータベースが配置されているプロジェクトを選択します。 store_type フィールドの値が meta の場合、このフィールドは空です。 sls.test-alert
store ターゲットテーブルの名前です。 test-logstore
query クエリ 文です。 error | select count(1) as cnt
start_time クエリする期間の開始時刻です。 store_type フィールドの値が meta の場合、このフィールドは空です。 2006-01-02 15:04:05
start_time_ts クエリされた期間の開始時刻を示します。 この値は UNIX タイムスタンプです。 store_type フィールドの値が meta の場合、このフィールドは空です。 1616741485
end_time クエリする期間の終了時刻を設定します。 store_type フィールドの値が meta の場合、このフィールドは空です。 2006-01-02 15:04:05
end_time_ts クエリされた期間の開始時刻を示します。 この値は UNIX タイムスタンプです。 store_type フィールドの値が meta の場合、このフィールドは空です。 1616745085
dashboard_id アラートルールに関連付けられているダッシュボードの ID です。 mydashboard
raw_results クエリするデータです。 この変数は配列型です。 最大 100 件のデータレコードが表示されます。 [{"host":"www.zc.mock.com","slbid":"slb-02","status":"200"},{"host":"www.evi.mock.com","slbid":"slb-01","status":"200"},{"host":"www.fo.mock.com","slbid":"slb-02","status":"306"},{"host":"www.gnp.mock.com","slbid":"slb-02","status":"200"},{"host":"www.tha.mock.com","slbid":"slb-01","status":"200"},{"host":"www.aoi.mock.com","slbid":"slb-02","status":"200"}]
fire_result アラートをトリガーする最初のデータレコードです。 クエリ結果には、複数のデータレコードが含まれている場合があります。 このフィールドには、最初のデータレコードが表示されます。 {"host":"www.zc.mock.com","slbid":"slb-02","status":"200"}