ProducerV2 - スコープ対象

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

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

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

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

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

    スキーマレコードのSys_id。

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

    表 : 2. 戻り値
    タイプ 説明
    なし

    この例では、f9d083f3ff610210ef7343d3653bf12e sys_idのスキーマを使用して、変更されたインシデント情報を 75135aa2ff0311105cf343d0653bf155 のsys_idで 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');