このトピックでは、SkyWalking と Application Real-Time Monitoring Service (ARMS) のアラート管理サブサービスを連携する方法について説明します。
手順 1: SkyWalking 連携の作成
ARMS console にログインします。左側のナビゲーションペインで、 を選択します。
アラート連携タブで、Skywalking をクリックします。
Skywalking 連携の作成ダイアログボックスで、SkyWalking 連携の名前と説明を入力し、アラートイベントの自動復旧時間を指定して、保存 をクリックします。
説明指定された期間内にアラートイベントが再度トリガーされない場合、アラートイベントは自動的にクリアされます。
アラート連携タブで、作成した SkyWalking 連携を見つけ、連携アドレス列の URL をコピーします。

手順 2: SkyWalking の構成
SkyWalking がデプロイされているサーバーにログインし、SkyWalking のスクリプトが配置されているディレクトリに移動します。
cd /opt/sky/apache-skywalking-apm-bin/次のコマンドを実行して、ディレクトリ内の config フォルダーを表示します。
ls config/次のコマンドを実行して、アラーム設定.ymlconfig フォルダー内の ファイルを変更します。
vim config/alarm-settings.yml手順 1 で取得した URL を
webhookフィールドに追加します。webhook - https://alerts.aliyuncs.com/api/v1/skywalking/event/******:wqコマンドを実行して、alarm-settings.yml ファイルへの変更を保存します。
(オプション) 手順 3: 連携の変更
アラート管理は、SkyWalking アラートソースと ARMS アラートイベント間のフィールドマッピングを提供します。また、連携の編集ページでフィールド間のマッピングを追加または変更することもできます。
アラートソースの例:
{
"startTime":1630408697583,
"scope":"SERVICE_INSTANCE",
"scopeId":2,
"name":"932******@127.0.XX.XX of testApp",
"alarmMessage":"instance_jvm_cpu of 932******@127.0.XX.XX of testApp is more than 80 in 2 minutes of last 3 minutes",
"ruleName":"instance_jvm_cpu_rule",
"id1":"",
"id0":"YnNtLXdlYg==.1_OTMyYjU1NmVmM2Y1NGR====--7p862kYTliODA4MTk0ZTJlODcxMWFAMTAuMS4xMS4xNg=="
}アラート連携タブで、管理する連携を見つけて、編集操作列の をクリックします。
イベントマッピングセクションで、テストデータの送信 をクリックします。
テストデータの送信ダイアログボックスで、サードパーティ製アラートソースのアラートコンテンツを JSON 形式で入力し、送信 をクリックします。
説明アップロードされました。イベントは生成されません。元のデータに基づいてマッピングを構成してください。 というメッセージが表示された場合、アラートソースのフィールドは ARMS アラートイベントのフィールドにマッピングされていません。送信されたデータは左側のボックスに表示されます。これにより、マッピングを構成するときにソースフィールドを選択できます。
アップロードされました。 というメッセージが表示された場合、アラートコンテンツはアラートイベント履歴ページに報告されます。詳細については、履歴アラートイベントの表示 を参照してください。
テストデータの送信ダイアログボックスで、無効化 をクリックします。
イベントマッピングセクションの左側で、マッピングを構成するデータレコードをクリックして詳細を表示します。
イベントマッピングセクションの右側で、アラートソースと ARMS 間のフィールドマッピングを構成します。
オプション:ルートノードの選択セクションで、バッチ処理を有効にするかどうかを指定します。
アラートデータに配列ノードが存在する場合、配列ノードをルートノードとして指定できます。ルートノードに属するデータはバッチ処理されます。
バッチ処理を使用 を選択した後、バッチ処理する配列ノードをルートノードとして選択します。
説明アラートデータに複数の配列ノードが存在する場合、バッチ処理用に配列ノードを 1 つだけ選択できます。
ソースフィールドをターゲットフィールドにマッピングセクションで、アラートソースのフィールドを 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 コンソールの左側のナビゲーションペインで、 を選択します。
アラートイベント履歴ページで、アラートイベントの名前をクリックしてイベント詳細を表示します。詳細については、履歴アラートイベントの表示 を参照してください。
連携の管理
左側のナビゲーションペインで、 を選択します。アラート連携タブで、作成した連携に対して次の操作を実行できます。
連携の詳細の表示: 連携を見つけて、行をクリックします。連携の詳細ページで、連携の詳細を表示します。
キーの更新: 連携を見つけて、操作列の OK
重要キーを更新した後、アラーム設定.yml手順 2の情報に基づいて ファイルを変更します。
を選択します。表示されるメッセージで、 をクリックします。
連携の変更: 連携を見つけて、操作列の 編集 をクリックします。連携の詳細ページで、連携情報を変更し、保存 をクリックします。
連携の有効化または無効化: 連携を見つけて、操作列の 無効化 または 有効化 をクリックします。
連携の削除: 連携を見つけて、操作列の 削除 をクリックします。表示されるメッセージで、OK をクリックします。
連携へのイベント処理フローの追加: 連携を見つけて、操作列の イベント処理フローの追加 をクリックします。詳細については、イベント処理フローの操作 を参照してください。
通知ポリシーの作成: 通知ポリシーを作成する連携を見つけて、操作列のその他をクリックします。表示されるリストで、通知ポリシーの作成 をクリックします。詳細については、通知ポリシーの作成と管理 を参照してください。
次の手順
通知ポリシーを作成した後、システムは、作成した通知ポリシーに基づいて、報告されたアラートイベントのアラートを生成し、アラート通知を送信します。詳細については、通知ポリシーの作成と管理 を参照してください。アラート送信履歴ページで、構成された通知ポリシーに基づいて生成されたアラートを表示できます。詳細については、アラート履歴の表示を参照してください。