このトピックでは、新しいバージョンのアラートテンプレートで使用できる変数について説明します。 このトピックでは、変数の参照に使用できるメソッドについても説明します。
参照方法
変数のフルネームを使用して、変数を参照する必要があります。 参照先の変数が見つからないか無効な場合、Simple Log Serviceはその変数を空の文字列に置き換えます。 参照変数の値がオブジェクト型の場合、値はJSON文字列に変換されます。 変数の名前が次のルールに準拠していることを確認します。名前には、英数字、およびアンダースコアを含める必要があります。 名前は数字で始めることはできません。
変数名がルールに準拠している場合は、
{{alert.xxx}}
形式で変数を参照します。変数名がルールに準拠していない場合は、別の形式で変数名を参照してください。 たとえば、
__tag __:__ namespace__
変数を参照する場合は、{{alert.annotations["__tag __:__ namespace__"}}
を使用します。
アクションポリシーを設定する場合、アラートテンプレートを選択する必要があります。 アラートテンプレートは、アラート通知の内容と件名を指定します。 アラートテンプレートの [コンテンツ] パラメーターと [件名] パラメーターを設定すると、{{ alert.xxx }}
形式の変数を参照できます。 Simple Log Serviceがアラート通知を送信する前に、Simple Log ServiceはContentおよびSubjectパラメーターで参照されている変数を実際の値に置き換えます。 たとえば、Simple Log Serviceは {{ alert.project }}
を、設定されたアラートルールが属するプロジェクトの名前に置き換えます。
制御フローと組み込み関数を使用して、変数を操作および処理することもできます。 新しいバージョンのアラートテンプレートでサポートされている構文と組み込み関数の詳細については、「新しいアラートテンプレートの構文」および「アラートテンプレートの組み込み関数」をご参照ください。
アラートの属性
変数 | 説明 | データ型 | 値の例 | 参考例 |
aliuid | ユーザーが属する Alibaba Cloud アカウントの ID です。 | String | 117918634953 **** |
|
alert_instance_id | トリガーされたアラートの実行ID。 | String | ee16a8f435485f3f-5be6b81edc520-3d6 **** | トリガーされたアラートの実行IDは |
alert_id | アラートルールの ID。 各アラートルールには、アラートルールが属するプロジェクト内で一意のIDが必要です。 | String | alert-12345 | アラートルールのIDは |
alert_name | アラートルールの名前です。 | String | テストアラートルール | アラートがトリガーされるアラートルールの名前は |
alert_type | アラートのタイプ。
| String | sls_alert | アラートのタイプは |
region | 地域 | String | cn-hangzhou | アラートは |
project | アラートルールが属するプロジェクトです。 | String | my-project | アラートのトリガーに基づくアラートルールは、 |
next_eval_interval | 次の評価アクティビティが開始されるまでの時間。 単位は秒です。 | int | 300 | 次の評価アクティビティは |
alert_time | 現在の評価アクティビティが開始される時刻。 | int | 1616744734 | 現在の評価アクティビティは |
fire_time | アラートが初めてトリガーされた時刻。 | int | 1616059834 | アラートは |
status | アラートのステータス。
| String | firing | アラートのステータスは |
resolve_time | アラートが作成された時刻。
| int | 0 | アラートは |
severity | アラートの重大度レベル。
| int | 10 | アラートの重大度レベルは |
labels | アラートのラベル。 | Map | {"env":"test"} | アラートのラベルは |
annotations | アラートの注釈。 | Map | {"title": "Alert title","desc": "Alert description"} | アラートのアノテーションは |
results | 返されるパラメーターと中間結果。 この変数の値は配列です。 この変数の値の詳細については、「QueryData構造体」をご参照ください。 | array | このトピックの最後にある「付録」セクションを参照してください。 | 最初のクエリは |
fire_結果 | アラートがトリガーされたデータレコード。 データの設定操作に応じて、最大100のデータレコードを返すことができます。 fire_resultsの値のサイズが2 KBを超え、1つのクエリ結果フィールドの値のサイズが1 KBを超える場合、fire_resultsの値は切り捨てられ、余分な部分は破棄されます。 | array | このトピックの最後にある「付録」セクションを参照してください。 | アラートは、 |
fire_results_count | アラートがトリガーされたデータレコードの総数。 この変数の値は100より大きくてもよい。 たとえば、データに対してCROSS JOIN操作を実行すると、Simple Log Serviceが100を超えるデータレコードのアラートをトリガーする場合があります。 | int | 3 | 合計 |
条件 | アラートのトリガーに基づくトリガー条件。 条件は式です。 Simple Log Serviceは、トリガー条件の変数をアラートをトリガーする値に置き換えます。 各値は、角かっこ [] で囲まれます。 この変数の値は、 | String |
| アラートがトリガーされるトリガー条件は、 |
raw_condition | 元のトリガー条件。 トリガー条件の変数は置き換えられません。 この変数の値は、 | String |
| 元のトリガー条件は |
policy | アラートポリシーまたはアクションポリシーのID。 この変数の値の詳細については、「ポリシー構造」をご参照ください。 | Map | このトピックの最後にある「付録」セクションを参照してください。 | アラートポリシーのIDは |
ダッシュボード | アラートに関連付けられているダッシュボードの名前。 | String | mydashboard | アラートに関連付けられているダッシュボードの名前は |
alert_url | アラートの詳細ページのURL。 | String | https://sls.console.aliyun.com/lognext/project/test-xxxx/alert/alert-1617164106-940166 | アラートの詳細ページのURLは |
query_url | 最初のクエリでアクセスされるソースwebページのURL。 | String | https://sls.console.aliyun.com/lognext/project/test-xxx/logsearch/test-alert-access?encode=base64&endTime=1617175989&queryString=KiB8IHNlbGVjdCBjb3VudCgxKSBhcyBjbn ****&queryTimeType=99&startTime=1617175089 | 最初のクエリでアクセスされるソースwebページのURLは |
alert_history_dashboard_url | アラート履歴統計ダッシュボードのURL。 | String | https://sls.console.aliyun.com/lognext/project/test-xx/dashboard/internal-alert-analysis | アラート履歴統計ダッシュボードのURLは |
dashboard_url | アラートに関連付けられているダッシュボードのURL。 | String | https://sls.console.aliyun.com/next/project/myproject/dashboard/mydashboard | アラートに関連付けられているダッシュボードのURLは |
指紋 | アラートの指紋。 詳細については、「指紋に基づく重複解消アラート」をご参照ください。 | String | 478325709134bc5c | アラートのフィンガープリントは |
signin_url | Simple log Serviceコンソールにログインしなくても、アラートの詳細を表示できるページのURL。 詳細については、「ログオンフリーモードでのアラートの詳細の表示」をご参照ください。 | String | https://sls.console.aliyun.com/console/AlertAjax/slsSignIn.json?token=xxxx |
|
ポリシー構造
policy変数で参照できる変数を次の表に示します。
変数 | 説明 | データ型 | 値の例 |
alert_policy_id | アラートポリシーのID | String | sls.test-alert |
action_policy_id | アラートルールで設定したアクションポリシーのID。 この変数は、アラートポリシーに動的アクションポリシーを選択した場合にのみ使用できます。 | String | sls.test-action |
repeat_interval | アクションポリシーが1回だけ実行され、重複アラートがトリガーされた場合にSimple Log Serviceが1つのアラート通知のみを送信する期間。 この変数は、アラートポリシーに動的アクションポリシーを選択した場合にのみ使用できます。 | String | 4h |
QueryData 構造
results変数で参照できる変数を次の表に示します。
変数 | 説明 | データ型 | 値の例 |
store_type | ストレージタイプです。
| String | log |
region | 配信先の Logstore または Metricstore が存在するリージョン。 store_type変数の値がmetaの場合、この変数は空です。 | String | cn-hangzhou |
project | 配信先 Logstore または Metricstore が属するプロジェクト。 store_type変数の値がmetaの場合、この変数は空です。 | String | sls.test-alert |
ストア | 配信先の Logstore 名または Metricstore 名。 | String | test-logstore |
query | クエリ 文。 | String | error | select count(1) as cnt |
start_time | 照会する期間の開始時刻です。 store_type変数の値がmetaの場合、この変数は空です。 | int | 1616741485 |
end_time | 照会する期間の終了時刻を設定します。 store_type変数の値がmetaの場合、この変数は空です。 | int | 1616745085 |
raw_results | 照会されるデータレコード。 この変数の値は配列です。 最大100のデータレコードを返すことができます。 raw_resultsの値のサイズが2 KBを超え、1つのクエリ結果フィールドの値のサイズが1 KBを超える場合、raw_resultsの値は切り捨てられ、余分な部分は破棄されます。 | array |
|
raw_results_count | 照会されるデータレコードの数。 数は100より大きくすることができる。 | int | 20 |
fire_result | アラートがトリガーされるデータレコードのうち、最初のデータレコード。 アラートがトリガーされる結果セットには、複数のデータレコードが含まれる場合があります。 Simple Log Serviceは、この変数の結果セットの最初のデータレコードのみを返します。 | Map |
|
query_url | 照会されるデータレコードのURL。 store_type変数の値がmetaの場合、この変数は空です。 | String | https://sls.console.aliyun.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.aliyun.com/next/project/myproject/dashboard/mydashboard |
role_arn | 使用されるサービスロールのAlibaba Cloudリソース名 (ARN) 。 | String | 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_結果
[{ "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" }