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(String topicSysID, String key, String message, Boolean isSync, Object headers, String schemaID)
指定されたメッセージを指定された Kafka トピックに送信します。
| 名前 | タイプ | 説明 |
|---|---|---|
| topicSysID | 文字列 | メッセージの公開先のトピックのSys_id。トピックは Kafka トピック [sys_kafka_topic] テーブルに格納されます。 |
| キー | 文字列 | トピック内の特定のパーティションのキーの名前。 |
| メッセージ | 文字列 | メッセージのテキスト。 |
| isSync | ブール | 続行する前に、送信メソッドの完了をスクリプトで待機させる必要があるかどうかを示すフラグ。 有効な値:
|
| ヘッダー | オブジェクト | キーと値のペアとして定義されたメッセージのヘッダー。 例: var headers = { "origin": "sn_business_rule" };
|
| schemaID | 文字列 |
スキーマレコードのSys_id。 スキーマを使用してプレーンテキストメッセージを Avro メッセージに変換したり、その逆を行ったりする場合に必要です。スキーマは、ストリームコネクトスキーマ [stream_connect_schema] テーブルに格納されます。詳細については、「Schema management in Stream Connect」を参照してください。 |
| タイプ | 説明 |
|---|---|
| なし |
この例では、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');