ProducerV2 - スコープ指定

  • リリースバージョン: Xanadu
  • 更新日 2024年08月01日
  • 所要時間:3分
  • ProducerV2 API は、ServiceNowインスタンスから Kafka トピックにメッセージを公開するためのメソッドを提供します。

    注:
    この API には ストリームコネクト サブスクリプションが必要です。詳細については、「https://www.servicenow.com/products/automation-engine.html」を参照してください。
    この API には ServiceNow ストリームコネクトインストーラープラグイン (com.glide.hub.stream_connect.installer) が必要であり、 sn_ih_kafka 名前空間で実行されます。

    ProducerV2 - send(文字列 topicSysID, 文字列 key, 文字列 message, ブール isSync, オブジェクトヘッダー, 文字列 schemaID)

    指定されたメッセージを指定された Kafka トピックに送信します。

    表 : 1. パラメーター
    名前 タイプ 説明
    トピック SysID 文字列 メッセージの公開先となるトピックのSys_id。トピックは、Kafka トピック [sys_kafka_topic] テーブルに格納されます。
    key 文字列 トピック内の特定のパーティションのキーの名前。
    メッセージ 文字列 メッセージのテキスト。
    isSync ブール sendメソッドの完了を待ってから続行するようにスクリプトに要求するかどうかを示すフラグ。
    有効な値:
    • true:ステップが完了するまで待機してから、関連するフローを続行します。
    • false:ステップが完了するまで待機せずに、関連するフローを続行します。
    ヘッダー オブジェクト キーと値のペアとして定義されたメッセージのヘッダー。
    "headers": {
      "<key>": "<value>"
    }
    たとえば、 var headers = { "origin": "sn_business_rule" };
    • key: 文字列。ヘッダーの名前。
    • value:文字列。ヘッダーの値。
    スキーマ ID 文字列

    スキーマレコードのSys_id。

    スキーマを使用してプレーンテキストメッセージを Avro メッセージに変換したり、その逆を行ったりする場合は必須です。スキーマは、ストリームコネクトスキーマ [stream_connect_schema] テーブルに格納されます。詳細については、「Schema management in Stream Connect」を参照してください。

    表 : 2. 返される内容
    タイプ 説明
    なし

    この例では、sys_id f9d083f3ff610210ef7343d3653bf12e のスキーマを使用して、sys_id 75135aa2ff0311105cf343d0653bf155 で、変更されたインシデント情報を Kafka トピックに送信する方法を示します。

    var message = {
      'number': current.number.toString(),
      'short_description': current.short_description.toString(),
      'caller_id': current.caller_id.getDisplayValue(),
      'priority': current.priority.toString(),
      'state': current.state.toString()
    };
    
    var headers = {
        'origin': 'sn_business_rule'
    };
    
    var producer = new sn_ih_kafka.ProducerV2();
    producer.send('75135aa2ff0311105cf343d0653bf155', gs.generateGUID(), JSON.stringify(message), false, headers, 'f9d083f3ff610210ef7343d3653bf12e');