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