Rufen Sie Nachrichten aus Hermes mit dem Kafka-Nachrichtenauslöser in Flow Designer und dem Skriptverbraucher ab.
Prozedur
-
Erstellen Sie ein Thema, um Nachrichten zu verarbeiten.
-
Verwenden Sie den folgenden Befehl, um ein Thema in Hermes zu erstellen.
bin/kafka-topics.sh --create --command-config config/bootcamp.properties --bootstrap-server <instance name>.service-now.com:4000,<instance name>.service-now.com:4001,<instance name>.service-now.com:4002, <instance name>.service-now.com:4003 --topic snc.<instance name>.topic1
Ersetzen Sie<instance name> mit dem Namen Ihrer Instanz.
-
Um das Thema anzuzeigen, melden Sie sich bei der Instanz an, und navigieren Sie zu .
Hinweis: Das Erstellen eines Themas dauert ungefähr 10 Minuten.
-
Erstellen Sie einen Flow-Auslöser, um Nachrichten aus dem Thema zu verarbeiten.
-
Navigieren zu .
-
Auswahlvorgang .
-
Geben Sie im Formular „Flow-Eigenschaften“ einen Namen für Ihren Flow ein, und geben Sie dann Absendenein.
In diesem Beispiel wird der Name Topic1 Consumerverwendet.
-
Wählen Sie im Abschnitt „Auslöser“ die Option Auslöser hinzufügenund dann Kafka-Nachricht als Auslösertyp aus.
-
Wählen Sie das Thema Topic1 aus.
Sie können das Lupensymbol verwenden, um die Liste der verfügbaren Themen anzuzeigen.
-
Navigieren Sie im Abschnitt „Aktionen“ des Flow zu .
-
Ziehen Sie die Datenpille Nachrichten in das Feld Elemente, und wählen Sie dann Fertigaus.
-
Navigieren Sie im Abschnitt „Aktionen“ des Flow zu .
-
Ziehen Sie die Datenpille Nutzlast in das Feld Nachricht, und wählen Sie dann Fertigaus.
-
Speichern Sie den Flow-Auslöser.
-
Wechseln Sie zur Tabelle „Einstellungen“ [sys_flow_execution_setting], um die Berichterstellung für diesen Flow zu aktivieren.
-
Erstellen Sie einen neuen Eintrag, und aktivieren Sie die Berichterstellung für den oben erstellten Flow.
-
Navigieren Sie zurück zu Ihrem Flow, und wählen Sie Aktivierenaus.
-
Um Ihr Themenabonnement anzuzeigen, navigieren Sie zu .
-
Veröffentlichen Sie Nachrichten im Thema mit dem Kafka-Befehlszeilentool.
-
Führen Sie den folgenden Befehl aus, um Nachrichten im Thema zu veröffentlichen.
bin/kafka-console-producer.sh --topic snc.<instance name>.topic1 --producer.config config/bootcamp.properties --bootstrap-server <instance name>.service-now.com:4000,<instance name>.service-now.com:4001,<instance name>.service-now.com:4002,<instance name>.service-now.com:4003
Ersetzen Sie<instance name> mit dem Namen Ihrer Instanz.
Dieser Befehl fordert Sie zur Eingabe von Nachrichten auf. Fügen Sie einige Beispielnachrichten hinzu. In diesem Beispiel werden die folgenden Nachrichten verwendet.
- Test message1
- Test message2
- Test message3
Sie sollten die Nachrichten in ungefähr einer Minute erhalten.
-
Navigieren Sie zurück zum Flow, und wählen Sie Ausführungenaus.
-
Öffnen Sie die Flow-Ausführung.
-
Um die Statistiken für dieses Abonnement anzuzeigen, navigieren Sie zu , öffnen Sie das Abonnement, und wechseln Sie zur Statistikansicht.
-
Erstellen Sie einen Skriptverbraucher, um Nachrichten aus dem Thema zu verarbeiten.
-
Navigieren zu .
-
Wählen Sie Neu.
-
Geben Sie im Feld Name einen Namen für Ihren Skriptverbraucher ein.
In diesem Beispiel wird Topic1 Consumerverwendet.
-
Legen Sie das Skript so fest, dass die Nachricht protokolliert wird, indem Sie im Skriptfeld die folgende Logik hinzufügen.
for (var i = 0; i < messages.length; i++) {
gs.info('Received message ' + JSON.stringify(messages[i].message));
}
-
Speichern Sie das Formular.
-
Wählen Sie im Abschnitt Zugehörige Links die Option Neu aus, um einen Kafka-Stream hinzuzufügen, um die Nachrichten zu verarbeiten.
-
Legen Sie im Formular „Kafka-Stream“ die folgenden Feldwerte fest.
- Name zu Stream „Thema1“.
- Thema zu dem zuvor erstellten Thema topic1.
- Max. Gleichzeitigkeit bis 1.
- Beginnen Sie mit der Verarbeitungaller im Thema gespeicherten Nachrichten. Mit dieser Option können Sie die in diesem Thema bereits veröffentlichten Nachrichten lesen.
- Nachrichtenverarbeitung zur automatischen Optimierung.
-
Klicken Sie unter Zugehörige Links auf den Link Aktivieren.
Sie sollten das aktivierte Abonnement sehen können.
-
Um die Nachrichten anzuzeigen, navigieren Sie zu und filtern Nachrichten, die mit Empfangene Nachricht beginnen.
-
Sie sollten alle Nachrichten nach 1 Minute sehen.