ProduktV2 – Umfang
Die ProduktV2 Die API stellt Methoden zum Veröffentlichen von Nachrichten von bereit ServiceNow Instanz für ein Kafka-Thema.
sn_ih_kafka Namespace.ProducerV2 – Send(ZeichenfolgentopicSysID, Zeichenfolgenschlüssel, Zeichenfolgennachricht, boolescher isSync, Objekt-Header, ZeichenfolgenschemaID)
Sendet die angegebene Nachricht an das angegebene Kafka-Thema.
| Name | Typ | Beschreibung |
|---|---|---|
| TopicSysID | Zeichenfolge | SYS_ID des Themas, in dem die Nachricht veröffentlicht werden soll. Themen werden in der Tabelle „Kafka-Themen“ [sys_kafka_topic] gespeichert. |
| key | Zeichenfolge | Name des Schlüssels für eine bestimmte Partition im Thema. |
| Nachricht | Zeichenfolge | Nachrichtentext. |
| IsSync | Boolean | Kennzeichnung, die angibt, ob das Skript warten soll, bis die Sendemethode abgeschlossen ist, bevor fortgefahren wird. Gültige Werte:
|
| headers | Objekt | Header für die Nachricht, definiert als Schlüssel-Wert-Paare. Beispiel: VAR-Header = { "Origin": "sn_Business_rule" };
|
| SchemaID | Zeichenfolge | SYS_ID des Schemadatensatzes. Erforderlich, wenn Sie ein Schema zum Konvertieren von nur-Text-Nachrichten in Avro-Nachrichten und zurück verwenden. Schemas werden in der Tabelle „Stream Connect-Schemas“ [Stream_Connect_Schema] gespeichert. Weitere Informationen finden Sie unter Schema management in Stream Connect. |
| Objekteigenschaft | Beschreibung |
|---|---|
| Lieferung | Kafka-Ersteller-Lieferung. Spiegelt den Wert wider, der für festgelegt wurde isSyncParameter. Mögliche Werte:
Datentyp: Zeichenfolge |
| Offset | Der Offset der Nachricht in der Partition des Themas in Hermes Kafka. Dieser Wert wird nur für die synchrone Zustellung zurückgegeben. Datentyp: Zahl |
| partition | Partition des Themas, in dem die Nachricht gespeichert ist. Dieser Wert wird nur für die synchrone Zustellung zurückgegeben. Datentyp: Zahl |
Asynchrone Zustellung
Dieses Beispiel zeigt, wie Sie geänderte Incident-Informationen mit der sys_ID 75135aa2ff0311105cf343d0653bf155 an das Kafka-Thema senden, indem Sie ein Schema mit der sys_ID f9d083f3ff610210ef7343d3653bf12e verwenden.
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');
Synchrone Bereitstellung
Dieses Beispiel zeigt, wie die Rückgabewerte einer Kafka-Nachricht abgerufen werden.
var message = "Defect fix";
var producer = new sn_ih_kafka.ProducerV2();
var response = producer.send('63820c0e1b492210dcff64e5604bcb93', gs.generateGUID(), JSON.stringify(message), true, null);
gs.log("Partition was "+response.partition);
gs.log("Offset was :"+response.offset);
gs.log("Delivery was :"+response.delivery);
*** Script: Partition was 1
*** Script: Offset was :258072
*** Script: Delivery was :sync