このトピックでは、Simple Log Service で生成されたアラートを Application Real-Time Monitoring Service (ARMS) のアラート管理サブサービスに統合する方法について説明します。
背景情報
Webhook を使用して、Simple Log Service で生成されたアラートをアラート管理に統合できます。このようにして、アラート管理を使用してアラートを一元的に処理できます。
Simple Log Service で生成されたアラートをアラート管理に統合するには、次のいずれかの方法を使用できます。
方法 1: 指定されたプロジェクトのすべてのアラートをアラート管理に統合します。詳細については、「統合を作成し、Simple Log Service アラートを統合する」セクションを参照してください。
方法 2 (推奨): Simple Log Service で生成された指定されたアラートをアラート管理に統合します。詳細については、「統合を作成し、Simple Log Service アラートを統合する」セクションと「Simple Log Service の指定されたアラートルールを統合する」セクションを参照してください。
統合を作成し、Simple Log Service アラートを統合する
ARMS console にログインします。左側のナビゲーションペインで、 を選択します。
アラート統合 タブの 統合 ページで、ログサービス をクリックします。
表示されたダイアログボックスで、統合の名前と説明を入力し、アラートイベントの自動リカバリ時間を指定します。
説明指定された期間内にアラートイベントが再度トリガーされない場合、アラートイベントは自動的にクリアされます。
すべてのプロジェクト リストの アラートイベントを有効にするプロジェクト セクションには、Alibaba Cloudアカウントに属するすべてのSimple Log Serviceプロジェクトが表示されます。統合するアラートのプロジェクトを選択し、
アイコンをクリックして、保存 をクリックします。
説明ARMS は、選択したプロジェクトに設定されているすべてのアラートルールを自動的にトラバースし、すべてのアラートルールのリクエスト URL を
https://alerts.aliyuncs.com/api/v1/cm/callback/{{token}}
に変更します。{{token}}
は、統合の作成時に自動的に作成されるキーを指定します。上記の手順を完了すると、アラート統合タブで作成した Simple Log Service 統合を表示できます。
Simple Log Service の指定されたアラートルールを統合する
指定されたアラートルールは、既存の Simple Log Service 統合にのみ統合できます。
アラート統合 タブの 統合 ページで、指定したアラート ルールを統合する Simple Log Service 統合を見つけ、統合の URL をコピーします。
Simple Log Service コンソールにログインします。
プロジェクトセクションで、アラートルールを統合するプロジェクトの名前をクリックします。左側のナビゲーションペインで、
アイコンをクリックします。
アラートセンターページで、 を選択します。Webhook 統合タブで、作成をクリックします。
表示されるダイアログボックスで、アラート管理のWebhookを追加します。アラート管理を名前パラメーターに、ユニバーサルwebhookをタイプパラメーターに設定します。その後、プロンプトに従って他のパラメーターを構成します。
アラートセンターページで、 を選択します。[アラートテンプレート] タブで、アラートテンプレートを見つけて、編集アクション列のWebhook-カスタム確認をクリックします。表示されたダイアログボックスで、タブをクリックし、次のコンテンツを入力して、をクリックします。
{ // "uid": "{{ alert.aliuid }}", // "project": "{{ alert.project }}(https://sls.console.aliyun.com/#/project/{{ alert.project }}/categoryList)", // "trigger": "{{ alert.alert_name }}", // "condition": "{{ alert.condition }}", // "context": {{ alert.results[0].raw_results | to_json | quote }}, // "message": " [Uid] {{ alert.aliuid }}\n\n> [Project] [{{ alert.project }}](https://sls.console.aliyun.com/#/project/{{alert.project }}/categoryList)\n\n> [Trigger] {{ alert.alert_name }}\n\n> [Condition] {{ alert.alert_name }}\n\n> [Message] 通知内容\n\n> [Context] {{ alert.results[0].raw_results | to_json | quote | removeprefix('"') | removesuffix('"') }}\n\n> [查看详情]({{ alert.query_url }})" }
アラートセンターページで、アラートルールタブをクリックします。[アラートルール] タブで、変更するアラートルールを見つけて、編集アクション列の詳細設定宛先シンプルなログサービス通知アラートポリシー簡易モードOKをクリックします。表示されたパネルで、を展開します。パラメーターをに設定し、パラメーターをに設定し、プロンプトに従って Webhook の通知方法を設定します。次に、 をクリックします。
統合を変更する
アラート管理は、Grafana アラートソースと ARMS アラートイベント間のフィールドマッピングを提供します。統合の編集ページで、フィールド間のマッピングを追加または変更することもできます。
アラート統合タブで、管理する統合を見つけて、編集列のアクションをクリックします。
イベントマッピングセクションで、テストデータを送信をクリックします。
テストデータを送信ダイアログボックスで、サードパーティ製アラートソースのアラートコンテンツを JSON 形式で入力し、送信をクリックします。
説明アップロードされました。イベントは生成されません。元のデータに基づいてマッピングを設定します。というメッセージが表示された場合、アラートソースのフィールドは ARMS アラートイベントのフィールドにマッピングされていません。送信されたデータは左側のボックスに表示されます。これにより、マッピングを設定するときにソースフィールドを選択できます。
アップロードされました。というメッセージが表示された場合、アラートコンテンツはアラートイベント履歴ページに報告されます。詳細については、「履歴アラートイベントを表示する」を参照してください。
テストデータを送信ダイアログボックスで、無効化をクリックします。
イベントマッピングセクションの左側で、マッピングを設定するデータレコードをクリックして詳細を表示します。
イベントマッピングセクションの右側で、アラートソースと ARMS 間のフィールドマッピングを設定します。
オプション:ルートノードを選択セクションで、バッチ処理を有効にするかどうかを指定します。
アラートデータに配列ノードが存在する場合、配列ノードをルートノードとして指定できます。ルートノードに属するデータはバッチ処理されます。
バッチ処理を使用するを選択した後、バッチ処理する配列ノードをルートノードとして選択します。
説明アラートデータに複数の配列ノードが存在する場合、バッチ処理用に配列ノードの 1 つだけを選択できます。
オプション:アラートリカバリイベントを設定するを選択し、アラートをクリアするためのフィールド条件を設定します。
ARMS はイベントを受信した後、指定されたフィールド値を含むアラートを検索し、これらのアラートをクリアします。アラートをクリアするために指定するフィールドは、イベントのアラート重大度に相当するフィールドである必要があります。
$.severity
フィールドを使用してアラートをクリアすることはできません。たとえば、アラートをクリアするために指定するフィールドが{$.eventType ="resolved"}
の場合、システムは統合においてeventType の値がresolvedであるすべてのアラートを自動的にクリアします。ソースフィールドをターゲットフィールドにマッピングするセクションで、アラートソースのフィールドを ARMS のアラートフィールドにマッピングします。
マッピングアイコンをクリックして、フィールドマッピングの方法を変更します。
直接: アラートソースの指定されたフィールドは、ARMS の指定されたアラートフィールドに直接マッピングされます。
シリーズ: 区切り文字を使用してアラートソースの複数のフィールドを 1 つのフィールドに連結し、このフィールドを ARMS の指定されたアラートフィールドにマッピングできます。区切り文字として使用できるのは特殊文字のみです。
条件付き: 指定されたアラートソースフィールドは、フィールド値が指定された条件を満たす場合にのみ、ARMS アラートフィールドにマッピングされます。
マッピングテーブル: アラートソースの重大度は、ARMS アラートの重大度にマッピングされます。マッピングテーブルには、重大度フィールドのみが含まれています。
次の表に、ARMS のアラートフィールドを示します。
アラートフィールド
説明
alertname
カスタムアラートの名前。
severity
アラートの重大度レベル。このフィールドのマッピングを設定する必要があります。マッピング方法は「直接」に設定する必要があります。
message
アラートの説明。説明は、アラートメッセージのコンテンツとして使用されます。説明は 15,000 文字を超えることはできません。
value
メトリックのサンプル値。
imageUrl
Grafana メトリックを含む折れ線グラフの URL。URL は、折れ線グラフをマッピングするために使用されます。
check
アラートのチェック項目。例: CPU、JVM、アプリケーションクラッシュ、デプロイ。
source
アラートのソース。
class
アラートイベントをトリガーするオブジェクトのタイプ (例: ホスト)。
service
アラートのソースサービス。例: ログインサービス。
startat
イベントの開始時刻を表すタイムスタンプ。
endat
イベントの終了時刻を表すタイムスタンプ。
generatorUrl
イベント詳細の URL。
アラートイベントのフィールド重複除外を設定します。
重複データを削減するために、システムは関連フィールドを重複除外の基準として使用します。ARMS アラート管理では、イベントマッピングセクションに表示される履歴イベントデータの重複除外グループ化結果をプレビューできます。重複除外されるフィールドを変更できます。
説明クリアされていないイベントに対してのみ重複除外を設定できます。
イベント重複除外 セクション (統合の詳細 ページ) で、重複除外に使用するフィールドを選択します。
複数のイベントが指定されたフィールドで同じ値を持つ場合、イベントは 1 つのアラート通知にマージされます。
重複除外テストをクリックして、重複除外後のアラートグループをプレビューします。
説明重複除外テストは、イベントマッピングセクションの左側にアップロードされた最新の 10 件のデータレコードにのみ有効です。
設定が完了したら、保存をクリックします。
アラートイベントの詳細を表示する
ARMS コンソールの左側のナビゲーションペインで、 を選択します。
アラートイベント履歴ページで、アラートイベントの名前をクリックしてイベント詳細を表示します。詳細については、「履歴アラートイベントを表示する」を参照してください。
サービスアラートを追加する
既存の Simple Log Service 統合にプロジェクトアラートを追加するには、次の手順を実行します。
統合ページの[アラートの統合]タブで、Simple Log Service統合を見つけて、[アクション]列で を選択します。
[プロジェクトの選択] ダイアログボックスで、追加するプロジェクトを選択し、
アイコンをクリックして、保存をクリックします。
統合を管理する
左側のナビゲーションペインで、
を選択します。アラート統合タブで、作成した統合に対して次の操作を実行できます。統合の詳細を表示する: 統合を見つけて、行をクリックします。統合の詳細ページで、統合の詳細を表示します。
キーを更新します。統合を見つけて、[
] を [アクション] 列で選択します。表示されるメッセージで、[OK] をクリックします。重要キーを更新した後、Simple Log Service プロジェクトのアラートを統合に再度追加します。詳細については、「サービスアラートを追加する」を参照してください。
統合を変更する: 統合を見つけて、アクション列の編集をクリックします。統合の詳細ページで、統合情報を変更し、保存をクリックします。
統合を有効または無効にする: 統合を見つけて、アクション列の無効化または有効化をクリックします。
統合を削除する: 統合を見つけて、アクション列の削除をクリックします。表示されたメッセージで、OK をクリックします。
統合にイベント処理フローを追加する: 統合を見つけて、アクション列のイベント処理フローを追加をクリックします。詳細については、「イベント処理フローを操作する」を参照してください。
通知ポリシーを作成する: 通知ポリシーを作成する統合を見つけて、アクション列の [詳細] をクリックします。表示されたリストで、通知ポリシーを作成をクリックします。詳細については、「通知ポリシーを作成および管理する」を参照してください。
次のステップ
通知ポリシーを作成すると、システムは、作成した通知ポリシーに基づいて、報告されたアラートイベントのアラートを生成し、アラート通知を送信します。詳細については、「通知ポリシーを作成および管理する」を参照してください。アラート送信履歴ページで、設定された通知ポリシーに基づいて生成されたアラートを表示できます。詳細については、「アラート履歴を表示する」を参照してください。