ServiceNow から Hermes にデータをプッシュし、Kafka コンシューマーが読み取れるようにします。
始める前に
- 必要なロール: integration_hub_admin
- このページは ストリームコネクト クイックスタートガイドの一部です。
- このドキュメントでは、Hermes への接続を介してメッセージを公開する方法について説明します。接続の設定とテストについては、「Hermes メッセージングサービス への安全な接続の設定」および「ADCv2 ゲートウェイを介した Hermes への接続のテスト」を参照してください。
- このページの前半では、ワークフロースタジオ の Kafka プロデューサーステップを使用して、Hermes にメッセージを公開する方法を説明します。ステップの詳細については、「」を参照してください。
- このページの後半では、ProducerV2 API を使用して、メッセージを公開する方法を説明します。詳細については、「ProducerV2 API」を参照してください。
- すべてのメッセージを受信するには、異なるデータセンターに対して 2 つのコンシューマーを実行する必要があります。詳細については、「」を参照してください。
手順
-
メッセージを受信するために、2 つのコンシューマーを起動します。
-
コマンドラインから次のコマンドを実行し、メッセージを受信します。
bin/kafka-console-consumer.sh --consumer.config config/bootcamp.properties --topic snc.<instance name>.topic1 --group snc.<instance name>.consumer_group1 --from-beginning --bootstrap-server <instance name>.service-now.com:4100,<instance name>.service-now.com:4101,<instance name>.service-now.com:4102,<instance name>.service-now.com:4103
bin/kafka-console-consumer.sh --consumer.config config/bootcamp.properties --topic snc.<instance name>.topic1 --group snc.<instance name>.consumer_group1 --from-beginning --bootstrap-server <instance name>.service-now.com:4200, <instance name>.service-now.com:4201, <instance name>.service-now.com:4202, <instance name>.service-now.com:4203
必ず
<instance name> をインスタンス名で置き換えてください。
-
フローステップを使用して、インスタンスからメッセージを公開します。
-
移動先 .
-
次を選択して新しいアクションを作成します .
-
[アクションプロパティ] フォームで、アクションに名前を付けた後、[送信] を選択します。
この例では、Message Publisher という名前を使用しています。
-
[Kafka プロデューサー] ステップをアクションに追加します。
アクションステップを追加するには、[アクションアウトライン] で [入力] と [エラーの評価] の間のプラス記号を選択します。
-
ステップで、[トピック] フィールドを「topic1」に設定します。
-
[メッセージ] フィールドにメッセージを入力します。
-
[保存] を選択してアクションを保存します。
-
[テスト] ボタンを選択してアクションをテストします。
アクションをテストすると、メッセージがトピックに公開されます。
-
メッセージを表示するには、ステップ 1 で作成したコマンドラインコンソールに移動します。
メッセージはいずれかのターミナルに表示されているはずです。
-
スクリプトを使用して、インスタンスからメッセージを公開します。
-
スクリプトバックグラウンドを使用して次のスクリプトを実行し、インスタンスからこのトピックにメッセージを公開します。
var producer = new sn_ih_kafka.ProducerV2();
producer.send('<sys id of the topic record>', gs.generateGUID(), 'Test message from ServiceNow', false, null);
必ず
<sys id of the topic record> をトピックレコードの sys_id に置き換えてください。
-
メッセージを表示するには、ステップ 1 で作成したコマンドラインコンソールに移動します。
メッセージはいずれかのターミナルに表示されているはずです。