第23章 トランザクションのコミット時に Kafka メッセージを送信するようにサービスおよび KIE Server を設定する


KIE Server には、Kafka メッセージを自動的に送信する エミッター を設定できます。この場合、KIE Server は、タスク、プロセス、ケース、または変数が作成、更新、または削除されるたびにメッセージを送信します。Kafka メッセージには、変更されたオブジェクトに関する情報が含まれます。変更を使用してトランザクションをコミットすると、KIE Server がメッセージを送信します。

この機能は、ビジネスプロセスまたはケースと合わせて使用できます。プロセス設計で何も変更する必要はありません。

この設定は、SpringBoot を使用してプロセスサービスを実行する場合にも利用できます。

デフォルトでは、KIE Server は以下のトピックでメッセージを公開します。

  • 完了したプロセスに関するメッセージ用の jbpm-processes-events
  • 完了したタスクに関するメッセージ用の jbpm-tasks-events
  • 完了したケースに関するメッセージ用の jbpm-cases-events

トピック名を設定できます。

公開されているメッセージは、CloudEvents specification バージョン 1.0 に準拠しています。各メッセージには以下のフィールドが含まれます。

  • id: イベントの一意識別子
  • type: イベントのタイプ (プロセス、タスク、またはケース)
  • source: URI となるイベントソース
  • time: デフォルトでは、RFC3339 形式のイベントのタイムスタンプ
  • data: JSON 形式で表示されるプロセス、ケース、またはタスクに関する情報

前提条件

  • KIE Server のインスタンスがインストールされています。

手順

  1. Kafka メッセージを自動的に送信するには、次のいずれかの作業を行います。

    1. Red Hat JBoss EAP または別のアプリケーションサーバーに KIE Server をデプロイした場合は、以下の手順を実行します。

      1. Red Hat カスタマーポータルの Software Downloads ページから、製品配信可能ファイル rhpam-7.13.4-maven-repository.zip をダウンロードします。
      2. ファイルの内容を展開します。
      3. maven-repository/org/jbpm/jbpm-event-emitters-kafka/7.67.0.Final-redhat-00024/jbpm-event-emitters-kafka-7.67.0.Final-redhat-00024.jar ファイルをアプリケーションサーバーの deployments/kie-server.war/WEB-INF/lib サブディレクトリーにコピーします。
    2. SpringBoot を使用してアプリケーションをデプロイした場合は、サービスの pom.xml ファイルの <dependencies> リストに以下の行を追加します。

      <dependency>
        <groupId>org.jbpm</groupId>
        <artifactId>jbpm-event-emitters-kafka</artifactId>
        <version>${version.org.kie}</version>
      </dependency>
      Copy to Clipboard Toggle word wrap
  2. 必要に応じて、以下の KIE Server システムプロパティーのいずれかを設定します。

    Expand
    表23.1 Kafka エミッターに関連する KIE Server のシステムプロパティー
    プロパティー説明デフォルト値

    org.kie.jbpm.event.emitters.kafka.bootstrap.servers:

    Kafka ブローカーのホストとポート。複数の host:port ペアのコンマ区切りリストを使用できます。

    localhost:9092

    org.kie.jbpm.event.emitters.kafka.date_format:

    メッセージの time フィールドのタイムスタンプ形式。

    yyyy-MM-dd’T’HH:mm:ss.SSSZ

    org.kie.jbpm.event.emitters.kafka.topic.processes

    プロセスイベントメッセージのトピック名。

    jbpm-processes-events

    org.kie.jbpm.event.emitters.kafka.topic.cases

    ケースイベントメッセージのトピック名。

    jbpm-cases-events

    org.kie.jbpm.event.emitters.kafka.topic.tasks

    タスクイベントメッセージのトピック名。

    jbpm-processes-tasks

    org.kie.jbpm.event.emitters.kafka.client.id

    リクエスト時にサーバーに渡す ID 文字列。サーバーは、この文字列をロギングに使用します。

     

    org.kie.jbpm.event.emitters.kafka.property_name

    この接頭辞を使用して、Red Hat AMQ Streams のコンシューマーあるいはプロデューサーのプロパティーを設定します。たとえば、buffer.memory プロデューサープロパティーの値を設定するには、KIE Server システムプロパティー org.kie.jbpm.event.emitters.kafka.buffer.memory を設定します。

    この設定は、KIE Server が、トランザクションの完了時に Kafka メッセージを自動的に送信するエミッターを使用して設定されている場合に適用されます。

    Red Hat AMQ Streams コンシューマーおよびプロデューサープロパティーの一覧は、RHEL の AMQ Streams の使用 の付録 コンシューマー設定パラメーター および プロデューサー設定パラメーター を参照してください。

     

    org.kie.jbpm.event.emitters.eagerInit

    デフォルトでは、KIE Server はメッセージ送信時のみ Kafka エミッターを初期化します。KIE Server の起動時に Kafka エミッターを初期化したい場合は、このプロパティーを true に設定します。

    KIE Server が Kafka エミッターを初期化する際、Kafka エミッターの設定にエラーがあった場合や Kafka の通信エラーがあった場合はログに記録されます。org.kie.jbpm.event.emitters.eagerInit プロパティーを true に設定すると、KIE Server 起動時にこのようなエラーがログ出力に表示されるようになります。

    false

Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2026 Red Hat
トップに戻る