Kafka プロデューサーステップと ProducerV2 API を使用したメッセージの公開

  • リリースバージョン: Washingtondc
  • 更新日 2024年02月01日
  • 読む4読むのに数分
  • ServiceNow から Hermes にデータをプッシュし、Kafka コンシューマーが読み取れるようにします。

    始める前に

    • 必要なロール: integration_hub_admin
    • このドキュメントでは、Hermes への接続を介してメッセージを公開する方法について説明します。接続の設定とテストについては、「Set up a secure connection to the Hermes Messaging Service」および「ADCv2 ゲートウェイを介した Hermes への接続のテスト」を参照してください。
    • このページの前半では、フローデザイナー の Kafka プロデューサーステップを使用して、Hermes にメッセージを公開する方法を説明します。ステップの詳細については、「Kafka Producer step」を参照してください。
    • このページの後半では、ProducerV2 API を使用して、メッセージを公開する方法を説明します。詳細については、「ProducerV2 API」を参照してください。
    • すべてのメッセージを受信するには、異なるデータセンターに対して 2 つのコンシューマーを実行する必要があります。詳細については、「Consume test messages from a Hermes topic using the Kafka client」を参照してください。

    手順

    1. メッセージを受信するために、2 つのコンシューマーを起動します。
      1. コマンドラインから次のコマンドを実行し、メッセージを受信します。
        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> をインスタンス名で置き換えてください。
    2. フローステップを使用して、インスタンスからメッセージを公開します。
      1. 移動先 すべて > プロセス自動化 > フローデザイナー.
      2. を選択して新しいアクションを作成 新規作成 > アクション.
      3. [アクションプロパティ] フォームで、アクションに名前を付けた後、[送信] を選択します。
        この例では、Message Publisher という名前を使用しています。
      4. [Kafka プロデューサー] ステップをアクションに追加します。

        アクションステップを追加するには、[アクションアウトライン] で [入力][エラーの評価] の間のプラス記号を選択します。

        Kafka プロデューサーステップをアクションに追加します。
      5. ステップで、[トピック] フィールドを「topic1」に設定します。
      6. [メッセージ] フィールドにメッセージを入力します。

        他のフィールドを変更する必要はありません。

        Kafka プロデューサーステップのフィールドに入力します。
      7. [保存] を選択してアクションを保存します。
      8. [テスト] ボタンを選択してアクションをテストします。
        アクションをテストすると、メッセージがトピックに公開されます。
      9. メッセージを表示するには、ステップ 1 で作成したコマンドラインコンソールに移動します。
        メッセージはいずれかのターミナルに表示されているはずです。
    3. スクリプトを使用して、インスタンスからメッセージを公開します。
      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 に置き換えてください。
      2. メッセージを表示するには、ステップ 1 で作成したコマンドラインコンソールに移動します。
        メッセージはいずれかのターミナルに表示されているはずです。