Kafka メッセージペイロード属性からアラートフィールドへのマッピング

  • リリースバージョン: Washingtondc
  • 更新日 2024年02月01日
  • 読む6読むのに数分
  • Kafka メッセージ属性をアラートフィールドにマッピングして、メッセージに基づくアラートをさらに意味のあるものにします。イベントフィールドマッピングを使用して、Kafka の重大度値を適切な ServiceNow 値にマップします。

    始める前に

    必要なロール:evt_mgmt_admin

    このタスクについて

    ペイロードによって、イベントフィールドマッピングを使用すると、イベントフィールドマッピングルールの値をイベントに置き換えることで、より包括的な情報をイベントアラートに提供できます。ペイロードによって、イベント内の情報を変換して、指定されたアラートフィールド値を入力し、さまざまな値からアラートフィールドを作成することで、追跡や修復のためのアラートを生成します。必要に応じて、イベントフィールドマッピングとアラートルールの両方を使用します。

    次のテーブルは、トピックから受信したメッセージとイベントの [追加情報] フィールドのフラット化されたペイロードを比較しています。トピックから受信したメッセージは単一フィールドにフラット化されて、イベントの [追加情報] フィールドに表示されます。これらのフラット化されたメッセージを使用して、イベントルールとマッピングを作成します。

    表 : 1. 実際のペイロードとフラット化されたペイロード
    トピックに挿入される実際のペイロード [追加情報] フィールドのフラット化されたペイロード
    { 
    
      "version": "v0.1.0", 
    
      "name": "fibsrc", 
    
      "id": "mnop6789", 
    
      "trigger_description": "Triggers on duration_ms goes above 5K", 
    
      "status": "TRIGGERED", 
    
      "alert_type": "on_true", 
    
      "summary": "Triggered: fibsrc", 
    
      "description": "Current value (12.296815 k) greater than threshold value (5 k)", 
    
      "operator": "greater than", 
    
      "threshold": 5000, 
    
      "groups": [ 
    
        { 
    
          "Group": "GroupA", 
    
          "Result": 12296.815478000368 
    
        } 
    
      ], 
    
      "trigger": { 
    
        "Result": 12296.815478000368 
    
      } 
    
    } 
    { 
    
      "flattened.alert_type": "on_true", 
    
      "flattened.description": "Current value (12.296815 k) greater than threshold value (5 k)", 
    
      "flattened.id": " mnop6789", 
    
      "flattened.kafkaKey": "null", 
    
      "flattened.kafkaOffset": "28", 
    
      "flattened.kafkaPartition": "0", 
    
      "flattened.kafkaTopicName": "topic123", 
    
      "flattened.name": "fibsrc", 
    
      "flattened.operator": "greater than", 
    
      "flattened.status": "TRIGGERED", 
    
      "flattened.summary": "Triggered: fibsrc", 
    
      "flattened.trigger_description": "Triggers on duration_ms goesa above 5K", 
    
      "flattened.version": "v0.1.0", 
    
      "flattened.version": 5000, 
    
      "flattened.groups.0.Group": "GroupA", 
    
      "flattened.groups.0.Result": 12296.815478000368, 
    
      "flattened.trigger.Result": 12296.815478000368 
    
    } 
    
    
    
    

    手順

    1. Kafka メッセージ属性を事前定義されたアラートフィールドにマップし、アラートを生成するために、イベントフィールドマッピングを作成します。
      1. 移動先 すべて > イベント管理 > ルール > イベントフィールドマッピング.
      2. [イベントフィールドマッピング] ウィンドウで、[新規] を選択します。
      3. [名前] フィールドにフィールドマッピングの名前を入力します。
      4. [ソース (Source)] フィールドに [Kafka コンシューマー] と入力します。
      5. [マッピングタイプ] フィールドで、適切なマッピングタイプを選択します
      6. 利用可能なマッピングタイプのリストについては、「イベントフィールドマッピング」を参照してください。
    2. Kafka メッセージ属性を事前定義されたアラートフィールドにマップし、アラートを生成するために、イベントルールを作成します。
      1. 移動先 すべて > イベント管理 > ルール > イベントルール.
      2. [新規] を選択します。
      3. [名前] フィールドで、イベントルールの名前を入力します。
      4. [ソース (Source)] フィールドに [Kafka コンシューマー] と入力します。
      5. [イベントフィルター] を選択します。
      6. 要件に従って適切なフィルターを入力します。
      7. [アラート出力の変換と構成] を選択します。

        イベントルールを作成すると、 [イベントルール] の [アラート出力の変換と構成] タブにイベントフィールドが表示されます。Kafka メッセージはユーザーごとに異なるため、イベントフィールドをアラートフィールドに変換して、アラートに詳細を表示する必要があります。

        注:
        重大度の値はアラートを作成するために必要なので、イベントルールまたはイベントフィールドマッピングを使用して [重大度] フィールドをマッピングする必要があります。[重大度] フィールドが空の場合、イベントは処理されず、エラーステータスになります。
      8. イベントのフィールドと [追加情報] フィールドをアラートのフィールドにマッピングします。
      9. [バインディング] を選択します。
      10. 要件に従って適切なバインディングを入力します。
      11. [送信] を選択します。
        詳細については、「イベントルールの作成または編集」を参照してください。
    3. [すべてのイベント (All Events)] 画面で、Kafka からのいずれかのイベントでイベントルールがないためにエラーステータスになっているかどうかを確認し、不足しているルールを指定します。
      1. 移動先 すべて > イベント管理 > すべてのイベント.
      2. [すべてのイベント (All Events)] テーブルで、[重大度] 列のステータスとして [エラー] が表示されている Kafka コンシューマーイベントを開きます。

        Kafka コンシューマーから受信するメッセージはさまざまです。コネクタは受信する属性を認識できないため、[重大度] フィールドまたは他のイベントフィールドをメッセージ内のフィールドにマップして、アラートフィールドに正しく入力されるようにする必要があります。

      3. [すべてのイベント (All Events)] 画面で、[イベントルールを作成] を選択して新しいイベントルールを作成します。
        イベントルールの作成の詳細については、「イベントルール」を参照してください。

        新しいタイプのイベントを処理するイベントフィールドマッピングが存在しない場合は、イベントフィールドマッピングを作成します。詳細については、「イベントフィールドマッピングの作成」を参照してください。

    タスクの結果

    Apache Kafka コンシューマーコネクタが構成されました。新しいメッセージが Kafka トピックに到着すると、ServiceNow インスタンスにイベントとして受信され、それらのイベントからアラートが作成されます。