Rufen Sie Nachrichten aus Hermes mit dem Auslöser „Kafka-Nachricht“ in Workflow-Studio und dem Skript-Verbraucher 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 unbedingt<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“ Auslöser hinzufügenund dann Kafka-Nachricht als Auslösertyp aus.
-
Wählen Sie das Thema 1 aus.
Sie können das Lupensymbol verwenden, um die Liste der verfügbaren Themen anzuzeigen.
-
Navigieren Sie im Abschnitt Aktionen des Flows zu .
-
Ziehen Sie die Datenpille Nachrichten in das Feld Elemente, und wählen Sie Fertigaus.
-
Navigieren Sie im Abschnitt Aktionen des Flows zu .
-
Ziehen Sie die Datenpille Nutzlast in das Feld Nachricht, und wählen Sie 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 mit dem Kafka-Befehlszeilentool Nachrichten im Thema.
-
Führen Sie den folgenden Befehl aus, um Nachrichten für das 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 unbedingt<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.
- Testnachricht1
- Testnachricht2
- Testnachricht3
Sie sollten die Nachrichten in etwa 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 Skript-Verbraucher, 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“ Neu, um einen Kafka-Stream zum Verwenden der Nachrichten hinzuzufügen.
-
Legen Sie im Formular „Kafka-Stream“ die folgenden Feldwerte fest.
- Name des Streams „Thema1“
- Thema zum zuvor erstellten Thema, topic1.
- Max. Gleichzeitigkeit bis 1.
- Verwendung von für alle im Thema gespeicherten Nachrichtenstarten. Mit dieser Option können Sie die bereits in diesem Thema veröffentlichten Nachrichten lesen.
- Nachrichtenverarbeitungautomatisch optimieren.
-
Wählen Sie unter Zugehörige Links den Link Aktivieren aus.
Sie sollten das aktivierte Abonnement sehen können.
-
Um die Nachrichten anzuzeigen, navigieren Sie zu und filtern Sie Nachrichten, die mit Nachricht Empfangen beginnen.
-
Sie sollten alle Nachrichten nach 1 Minute sehen.