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

Application Real-Time Monitoring Service:イベント処理フローの操作

最終更新日:Apr 25, 2025

Application Real-Time Monitoring Service (ARMS) のアラート管理モジュールに複数のアラートソースを統合した後、イベント処理フローを設定して、アラートソースによって生成されたイベントをフィルタリングおよび分類できます。このトピックでは、イベント処理フローを作成する方法について説明します。

イベント処理フローの作成

  1. ARMSコンソールにログインします。

  2. 左側のナビゲーションペインで、アラート管理 > イベント処理フローを選択します。

  3. イベント処理フローページで、右上隅にある処理フローの作成をクリックします。

  4. 処理フローの作成ページの基本情報セクションに、イベント処理フローの名前を入力します。

  5. フローアクション設定セクションで、イベント処理フローを設定します。

    1. 使用可能なアクションセクションからイベント処理フローセクションにアクションをドラッグします。

    2. 右端のセクションで、イベント処理フローの各アクションのトリガー条件を設定します。

      説明

      トリガー条件を設定した後、テストデータセクションのアラートフィールドに対してアクションを実行し、アクションがトリガーされるかどうかを確認できます。

      アクション

      説明

      トリガー条件

      イベントがトリガー条件を満たすと、現在のイベント処理フローをトリガーします。

      シナリオ

      コンテナCPU使用率アラートという名前の統合によってイベントが生成されたときに、現在のイベント処理フローをトリガーしたいとします。

      構成

      次の条件を設定します:_aliyun_arms_integration_name is equal to container CPU utilization

      Trigger conditions for an event processing flow

      イベントのフィルタリング

      イベントをフィルタリングします。フィルタ条件を満たすイベントは、現在のイベント処理フローをスキップして、次のイベント処理フローに進みます。フィルタ条件を満たさないイベントは、現在のイベント処理フローの次のアクションに進みます。

      説明

      アラートルールに対してイベントが生成されない場合は、ARMSにプリセットされている_aliyun_arms_integration_idフィールドと_aliyun_arms_integration_nameフィールドを設定することで、イベントをフィルタリングできます。重大度やアラート名などのイベントフィールドは、次のいずれかの方法で設定できます。

      • フィールドを手動で入力します。

      • 条件を満たすアラートルールを追加して、アラートルールのイベントを生成します。アラートルールのイベントが生成された後、イベントフィールド値を設定することで、イベントをフィルタリングできます。

      シナリオ

      重大度がP4のイベントを現在のイベント処理フローからスキップしたいとします。

      構成

      次の条件を設定します:severity is equal to P4

      Filter events

      イベントタイプの識別

      指定したイベントフィールド値に基づいて、イベントのクラスとタイプを識別します。これにより、イベントとアラートに関する統計情報をクエリおよび収集できます。

      次のイベントクラスを識別できます。

      • ネットワーク

      • ストレージ

      • コンピューティング

      • OS

      • アプリケーション

      • データベース

      • 変更

      次のイベントタイプを識別できます。

      • 可用性

      • レイテンシ

      • 容量

      • エラー

      • 不明

      シナリオ

      alertnameフィールドとmessageフィールドの値に基づいて、システムにイベントクラスとイベントタイプを識別させたいとします。

      構成

      タイプを識別するために使用されるフィールドalertnamemessageに設定します。

      Identify event classes and event types

      結果

      システムは、イベントのclassフィールドとtypeフィールドにイベントのクラスとタイプを書き込みます。

      Result

      イベントレベルの設定

      イベントの重大度を指定した値に設定します。

      シナリオ

      イベントのclassフィールドの値がnetworkの場合、コサービスに生成されたイベントの重大度をP1に設定したいとします。

      構成

      1. トリガー条件アクションに次の条件を設定します:class is equal to network

      2. イベントレベルの設定アクションで、イベントレベルの設定フィールドにP1を選択します。Set the severity levels of events

      結果

      Test result

      ビジネスタグの設定

      イベントにlabelフィールドを追加します。これにより、イベントとアラートに関する統計情報をクエリおよび収集できます。

      • フィールド:イベントの指定されたフィールドの値をlabelフィールドの値として使用します。

      • 値:labelフィールドの値を指定します。

      シナリオ

      イベントの重大度をlabelフィールドの値として使用したいとします。こうすることで、各重大度のイベントに関する統計情報を収集できます。

      構成

      次の値をビジネスタグに更新セクションで、フィールドと重大度を選択します。

      Add the label field to events

      結果

      イベントにlabelフィールドが追加されます。labelフィールドの値は、severityフィールドの値と同じです。

      フィールドの削除

      イベントから指定されたフィールドを削除します。

      シナリオ

      アラートイベントにはlocationフィールドとregionフィールドが含まれていますが、locationフィールドにはすでにリージョン情報が含まれています。イベントからregionフィールドを削除したいとします。

      構成

      フィールドの削除パラメータをregionに設定します。

      Delete fields from events

      コンテンツの抽出

      正規表現を使用してフィールドから情報を抽出し、新しいフィールドに情報を設定できます。

      シナリオ

      アラートフィールド:

      "location":"cn-hangzhou-hz4"

      locationフィールドからリージョンとロケーションに関する情報を抽出し、regionフィールドとdatacenterフィールドに情報を設定したいとします。

      構成

      • 抽出するフィールド:location

      • 正規表現:([a-zA-z]+-[a-zA-z]+)-(.*)

      • 埋め込み結果:regiondatacenter

      Extract content

      結果

      Test result

      一致更新

      一致フィールドに指定されたコンテンツが含まれている場合、更新するフィールドを指定された値に設定します。

      シナリオ

      アラートフィールド:

      "message":"ping to i-bp1e42d0ydxf7pstuepz > 100ms"

      messageフィールドにpingが含まれている場合、イベントのclassフィールドをnetworkに更新したいとします。

      構成

      • 一致フィールド:message

      • 次の条件が満たされたときにフィールド値を更新する:次を含む:ping。出力network

        説明

        次を含むパラメータには、特定の値または正規表現を設定できます。

      • 埋め込みフィールド:class

      Update fields

      結果

      Test result

      フィールドのエンリッチ

      API操作を呼び出したり、ローカルのExcelデータソースをクエリしたり、出力値を生成したり、出力値を宛先フィールドに設定したりできます。

      説明

      データソース機能はカナリアリリースされています。この機能を使用するには、アラート管理テクニカルサポート(DingTalkアカウントID:d9j_rg9e4062f)にお問い合わせください。

      シナリオ

      アップロードされたExcelデータソースで、アラートイベントのIPフィールドに基づいてホスト名をクエリし、hostnameフィールドにホスト名を設定したいとします。

      構成

      • データソースの選択:ホストデータソースの取得 - Excel

      • 一致更新モード:ip(Excel列名)等しいip(Excel列値)

      • 埋め込みフィールド:$.hostName(Excelクエリによって返される列名)埋め込みhostname

      コンテンツの置換

      指定されたフィールドのコンテンツを置換します。正規表現を使用して、置換するコンテンツを検索できます。

      シナリオ

      文字列d.b.を文字列databaseに置換したいとします。

      構成

      • 置換するコンテンツ:message

      • 置換コンテンツ:d\.b\.

        説明

        特定の値または正規表現を指定できます。

      • 次で置換:database

      Replaces content

      結果

      Test result

      コンテンツの分割

      区切り文字を使用して、指定されたフィールドの値を複数の値に分割し、宛先フィールドに値を設定します。

      シナリオ

      アラートフィールド:

      "message":"myhostid_myuserid_myruleid"

      messageフィールドの値をhostiduseridruleidに分割し、新しいフィールドに値を設定したいとします。

      構成

      • 分割するフィールド:message

      • 区切り文字:_

      • 分割結果を埋め込むために使用されるフィールド:hostIduserIdruleId

        説明

        フィールドは順番に設定されます。

      Split content

      結果

      Test result

      テンプレートの埋め込み

      テンプレートコンテンツを入力します。たとえば、タイプ${class}のイベントのソースは${source}です。変数名は、イベントが統合された後のフィールド名です。テンプレートがレンダリングされ、ターゲットフィールドに埋め込まれます。

      シナリオ

      アラートフィールド:

      "source":"server",
      "class":"network"

      messageフィールドに次のテンプレートを設定したいとします:${class} events are from ${source}。テンプレートは、classフィールドとsourceフィールドの値を参照します。

      構成

      • 埋め込むテンプレート:${class} events are from ${source}

      • 埋め込みフィールド:message

      Populate fields with templates

      結果

      Test result

      破棄

      イベントを破棄します。このアクションは、イベント処理フローの最後のアクションとしてのみ使用できます。このアクションを設定する必要はありません。

      該当なし。

  6. テストデータセクションで、フィールドとフィールド値を入力するか、イベントから選択をクリックして既存のアラートイベントを選択し、テストをクリックします。

  7. 保存をクリックします。

    イベント処理フローを作成すると、アラートソースからのイベントがイベント処理フローによってフィルタリングされます。結果はアラートイベント履歴ページで確認できます。詳細については、履歴アラートイベントの表示を参照してください。

イベント処理フローの管理

イベント処理フローを作成した後、イベント処理フローに対して次の操作を実行できます。

  • イベント処理フローの並べ替え:管理するイベント処理フローを見つけて、[アクション]列の上へまたは下へをクリックします。

  • イベント処理フローの有効化または無効化:管理するイベント処理フローを見つけて、[アクション]列の有効化または停止をクリックします。

  • イベント処理フローの変更:変更するイベント処理フローを見つけて、[アクション]列の編集をクリックします。

  • イベント処理フローの削除:削除するイベント処理フローを見つけて、[アクション]列の削除をクリックします。表示されるメッセージで、OKをクリックします。

処理されたアラートイベントの表示

左側のナビゲーションペインで、アラート管理 > アラートイベント履歴を選択します。

アラートイベント履歴ページで、すべてのアラートイベントを表示できます。アラートイベントの名前をクリックすると、イベントの詳細を表示できます。詳細については、履歴アラートイベントの表示を参照してください。