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

Application Real-Time Monitoring Service:ARMS とのカスタムアラートソースの統合

最終更新日:Mar 12, 2026

ARMS のアラート管理は、HTTP 呼び出しが可能なあらゆるシステムからのアラートイベントを受け入れる API を提供します。この API を使用して、カスタムまたはサードパーティのモニタリングツールからのアラートを ARMS にレポートし、一元管理することができます。

この統合は、3 つのコアコンセプトに基づいています:

  • トリガー:アラートイベントを送信して、ARMS でアラートを作成または更新します。

  • 解決:回復条件が満たされると、アラートを自動的にクリアします。

  • 重複排除:同じフィールド値を持つイベントを単一のアラート通知にマージします。

前提条件

開始する前に、以下を確認してください:

  • ARMS が有効化されている Alibaba Cloud アカウント

  • HTTP POST リクエストを送信できるサードパーティのモニタリングシステムまたはカスタムツール

ステップ 1: カスタム統合の作成

  1. ARMS コンソールにログインします。左側のナビゲーションウィンドウで、 [アラート管理] > [統合] を選択します。

  2. [アラート統合] タブで、 [カスタム統合] をクリックします。

  3. [カスタムイベント統合の作成] ダイアログボックスで、統合名を入力し、自動クリア期間を指定し、オプションで説明を追加します。 [保存して設定] をクリックします。

説明 自動クリア期間内にアラートイベントが再度トリガーされない場合、ARMS はアラートを自動的にクリアします。

ステップ 2: API エンドポイントへのアラートイベントの送信

統合を作成すると、ARMS は API エンドポイントと API キーを生成します。

  1. [統合詳細] ページの [スパン設定] セクションで、API エンドポイントと API キーをコピーします。

    API key of a custom integration

  2. アラートソースから API エンドポイントに POST リクエストを送信します。

クイックスタート: 最小ペイロード

接続性を確認するために、可能な限り最小のペイロードを送信します:

curl -k -H "Content-Type: application/json" -d '{
  "alertname": "test-alert",
  "severity": "P2",
  "message": "Test alert from custom source"
}' "https://alerts.aliyuncs.com/api/v1/integrations/custom/<your-api-key>"

前のステップでコピーした API キーで <your-api-key> を置き換えてください。

説明 初めてイベントを送信すると、API はエラーコード 601 とメッセージ Invalidincident,labels.alertnameisrequired を返します。これは想定内の動作です。まずステップ 3 でフィールドマッピングを設定してから、イベントを再送信してください。

完全なペイロードの例

次の curl コマンドは、サーバーで TCP パケットエラーが発生するシナリオの完全なアラートイベントを送信します。ペイロードには、ネストされたメタデータと機器の配列が含まれています:

curl -k -H "Content-Type: application/json" -d '{
  "trigger-type": "network",
  "trigger-location": "cn-hangzhou",
  "trigger-severity": "MAX",
  "trigger-policy": "package errors > 5%",
  "trigger-event": "inbound tcp package errors is 20%",
  "trigger-check": "tcp package error percentage",
  "trigger-value": "20",
  "trigger-time": "1629702922000",
  "metadata": [
    {
      "agent": "SERVER",
      "ip": "141.219.XX.XX",
      "fqdn": "websrv1.damenport.org",
      "microServiceId": "ms-login-2251",
      "accountId": "1504000433993",
      "service": "login-0"
    },
    {
      "agent": "CONTAINER",
      "ip": "172.1.XX.XX",
      "fqdn": "websrv2.damenport.org",
      "microServiceId": "ms-login-2252",
      "accountId": "129930302939",
      "service": "login-1"
    }
  ],
  "equipments": [
    {
      "equipmentId": "112"
    },
    {
      "equipmentId": "113"
    }
  ]
}' "https://alerts.aliyuncs.com/api/v1/integrations/custom/<your-api-key>"

次の表に、このペイロードの主要なフィールドを示します:

フィールド説明値の例
trigger-typeイベントタイプnetwork
trigger-severity重大度レベル (MAX、MID、または LOW)MAX
trigger-eventイベントの説明inbound tcp package errors is 20%
trigger-time開始時刻 (ミリ秒単位の UNIX タイムスタンプ)1629702922000
metadata[*].agentエージェントタイプ (SERVER または CONTAINER)SERVER
metadata[*].accountIdユーザー ID (アラート通知には含まれません)1504000433993

次のプレースホルダーを実際の値に置き換えてください:

プレースホルダー説明
<your-api-key>スパンの設定 セクションの API キーymQBN******

ステップ 3: アラートフィールドマッピングの設定

フィールドマッピングは、アラートソースのフィールドが ARMS のアラートフィールドにどのように変換されるかを定義します。マッピングがないと、ARMS は受信イベントを解析できません。

テストデータの送信

  1. [統合詳細] ページの [イベントマッピング] セクションで、 [テストデータの送信] をクリックします。

  2. [テストデータの送信] ダイアログボックスで、アラートソースから JSON ペイロードを貼り付け、 [送信] をクリックします。

    • メッセージ [アップロード済み。イベントは生成されません。元のデータに基づいてマッピングを設定してください。] が表示された場合、フィールドはまだマッピングされていません。マッピングを設定する際のリファレンスとして、生データが左側のペインに表示されます。

    • [アップロード済み。]」というメッセージが表示された場合、イベントは正常に報告されています。これを[アラート イベント履歴]ページで表示します。詳細については、「過去のアラート イベントを表示する」をご参照ください。

    Send test data

  3. [テストデータの送信] ダイアログボックスで、 [無効化] をクリックします。

バッチ処理の設定 (オプション)

アラートデータに配列ノード (例: metadata) が含まれている場合、配列内のすべての要素をバッチとして処理できます。

  1. [イベントマッピング] セクションの左側のペインで、データレコードをクリックして詳細を表示します。

  2. 右側のペインの [ルートノードの選択] で、 [バッチ処理を使用] を選択し、ルートノードとして使用する配列ノードを選択します。

説明 一度に選択できるバッチ処理用の配列ノードは 1 つだけです。

バッチ処理がフィールドマッピングに与える影響

  • バッチ有効 (例: ルートノードとして metadata):すべての $.metadata[*].service の値が、ターゲットの ARMS フィールドに繰り返しマッピングされます。

  • バッチ無効:特定の要素 (例: $.metadata[0].service または $.metadata[1].service) のみがターゲットフィールドにマッピングされます。

アラート復旧イベントの設定 (オプション)

復旧イベントが到着したときにアラートを自動的にクリアするには、 [アラート復旧イベントの設定] を選択し、フィールド条件を定義します。

ARMS が条件に一致するイベントを受信すると、対応するアラートを検索してクリアします。条件フィールドは、イベントのアラート重大度と同等でなければなりません。$.severity フィールドは使用できません。

たとえば、条件 {$.eventType = "resolved"} は、統合内で eventType フィールドが resolved に等しいすべてのアラートをクリアします。

ソースフィールドと ARMS アラートフィールドのマッピング

[ソースフィールドをターゲットフィールドにマッピング] セクションで、各ソースフィールドを ARMS のアラートフィールドにマッピングします。

次の表に、ARMS のアラートフィールドを示します:

アラートフィールド必須説明マッピングメソッドソースフィールドの例
alertnameはいアラート名シリーズ$.trigger-type$.trigger-policy
severityはいアラートレベル。ソースの値を ARMS の値 (P1、P2、P3) に変換するためのマッピングテーブルが必要です。直接 + マッピングテーブル$.trigger-severity (MAX -> P1, MID -> P2, MIN -> P3)
messageいいえアラートの説明。通知内容として使用されます。最大 15,000 文字。直接$.trigger-event
valueいいえサンプルメトリック値直接$.trigger-value
imageUrlいいえアラートに埋め込むための Grafana メトリックチャートの URL--
checkいいえ確認項目 (CPU、JVM、アプリケーションクラッシュ、Deployment など)直接$.trigger-check
sourceいいえアラートソース識別子 (通常は IP アドレス)直接$.metadata[*].ip
classいいえアラートをトリガーするオブジェクトタイプ (例: host直接$.trigger-type
serviceいいえソースサービス名。条件付きマッピングをサポートします。条件以下の条件付きマッピングの例をご参照ください
startatいいえイベント開始タイムスタンプ直接$.trigger-time
endatいいえイベント終了タイムスタンプ--
generatorUrlいいえイベント詳細ページへのリンク URL--

マッピングメソッド

フィールドの横にあるマップアイコンをクリックして、これらのマッピングメソッドを切り替えます:

  • 直接:1 つのソースフィールドを 1 つの ARMS フィールドに直接マッピングします。

  • 直列:複数のソースフィールドをデリミタ (特殊文字のみ) で連結して 1 つの値にし、それを ARMS フィールドにマッピングします。たとえば、$.trigger-type$.trigger-policy をアンダースコア (_) で結合すると network_package errors > 5% が生成され、これが alertname にマッピングされます。

  • 条件: 条件に基づいてソースフィールドをマッピングします。例: 条件付きマッピングの設定

    • $.metadata[*].agentコンテナ と等しい場合、$.metadata[*].microServiceId を ARMS の service フィールドにマッピングします。

    • もし $.metadata[*].agentSERVER に等しい場合、$.metadata[*].service を ARMS の service フィールドにマップします。

  • マッピングテーブル:ルックアップテーブルを介してソースの値を ARMS の値に変換します。severity フィールドでのみ使用されます。

Configure the custom alert source

ステップ 4: 重複排除の設定

重複排除は、同じフィールド値を持つイベントを単一のアラート通知にマージし、ノイズを低減します。

説明 重複排除は、クリアされていないイベントにのみ適用されます。
  1. [イベントの重複排除] セクションで、重複排除に使用するフィールドを選択します。たとえば、$.metadata[*].ipsource にマッピングされ、$.trigger-checkcheck にマッピングされている場合、sourcecheck の両方を選択すると、同じ IP アドレスからの同じ確認項目のイベントが 1 つのアラートにマージされます。IP アドレスまたは確認項目が異なるイベントは、別々のままです。

  2. [重複排除テスト] をクリックして、グループ化の結果をプレビューします。

    説明 テストは、 [イベントマッピング] セクションでアップロードされた最新の 10 件のデータレコードに対してのみ実行されます。

    Deduplicate alert events

  3. [保存] をクリックします。

統合の確認

構成を保存した後、[アラート管理][統合] に移動します。新しい統合が [アラート統合] タブに表示されていることを確認してください。

API key of a custom integration

その他の操作

[アラート統合] タブでは、各統合に対して次の操作が利用できます:

操作手順
詳細の表示統合の行をクリックして [統合詳細] ページを開きます。
API キーの更新 [操作] 列で [その他] > [キーの更新] を選択し、 [OK] をクリックします。更新後、ステップ 2 で設定したアラートソースのエンドポイントを変更してください。
統合の編集 [操作] 列の [編集] をクリックします。 [統合詳細] ページで設定を変更し、 [保存] をクリックします。
有効化または無効化[有効化] または [無効化][操作] 列でクリックします。
統合の削除[操作] 列の [削除] をクリックし、次に [OK] をクリックします。
イベント処理フローの追加[操作] 列で、[イベント処理フローの追加] をクリックします。詳細については、「イベント処理フローの操作」をご参照ください。
通知ポリシーの作成[その他]」>「[通知ポリシーの作成]」を選択します([操作] 列内)。詳細については、「通知ポリシーの作成と管理」をご参照ください。

次のステップ

通知ポリシーを作成すると、システムはそのポリシーに基づいてアラートを生成し、アラート通知を送信します。 詳細については、「通知ポリシーを作成および管理する」をご参照ください。

[アラート送信履歴] ページで、設定した通知ポリシーに基づいて生成されたアラートを表示できます。詳細については、「履歴アラートの表示」をご参照ください。