ProducerV2 - スコープ対象
ProducerV2 API は、ServiceNow インスタンスから Kafka トピックにメッセージを公開するメソッドを提供します。
注:
この API は ServiceNow ストリームコネクトインストーラープラグイン (com.glide.hub.stream_connect.installer) を必要とし、 この API には ストリームコネクト サブスクリプションが必要です。詳細については、「https://www.servicenow.com/now-platform/workflow-data-fabric.html」を参照してください。
sn_ih_kafka 名前空間で実行されます。ProducerV2 - send(文字列 topicSysID, 文字列キー, 文字列メッセージ, ブール isSync, オブジェクトヘッダー, 文字列 schemaID)
指定されたメッセージを指定された Kafka トピックに送信します。
| 名前 | タイプ | 説明 |
|---|---|---|
| トピック SysID | 文字列 | メッセージの公開先トピックのSys_id。トピックは Kafka トピック [sys_kafka_topic] テーブルに格納されます。 |
| キー | 文字列 | トピック内の特定のパーティションのキーの名前。 |
| メッセージ | 文字列 | メッセージテキスト。 |
| isSync | ブール | 続行する前にスクリプトが send メソッドの完了を待つように要求するかどうかを示すフラグ。 有効な値:
|
| ヘッダー | オブジェクト | キーと値のペアとして定義されたメッセージのヘッダー。 たとえば、 var headers = { "origin": "sn_business_rule" };
|
| スキーマ ID | 文字列 |
スキーマレコードのSys_id。 スキーマを使用してプレーンテキストメッセージを Avro メッセージに変換したり、その逆を行ったりする場合は必須です。スキーマは、ストリームコネクトスキーマ [stream_connect_schema] テーブルに保存されます。詳細については、「Schema management in Stream Connect」を参照してください。 |
| タイプ | 説明 |
|---|---|
| なし |
この例では、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');