9.3 ライブラリ・プロパティの構成

MicroTxクライアント・ライブラリ・プロパティの構成情報を指定します。すべての参加側アプリケーションおよびイニシエータ・アプリケーションに対してこのステップを実行する必要があります。

JAX-RSおよびNode.jsアプリケーションの場合、任意のコード・エディタでtmm.propertiesファイルを開き、次のパラメータの値を入力してMicroTxライブラリを構成します。Spring RESTアプリケーションの場合、application.yamlファイルを使用します。

JAX-RSおよびSpring RESTアプリケーションでは、プロパティの名前は異なりますが、機能は同じままです。

  • Spring RESTアプリケーションの場合はspring.microtx.coordinator-url、他のアプリケーションの場合はoracle.tmm.TcsUrl: MicroTxアプリケーションにアクセスするためのURLを入力します。「MicroTxへのアクセス」を参照してください。この値はトランザクション・イニシエータ・アプリケーションの場合に入力する必要があります。トランザクション参加側アプリケーションの場合、この値を指定する必要はありません。
  • Spring RESTアプリケーションの場合はspring.microtx.propagation-active、他のアプリケーションの場合はoracle.tmm.PropagateTraceHeaders: トランザクションを全面的にトレースする場合は、これをtrueに設定します。これにより、すべての受信リクエストおよび送信リクエストのトレース・ヘッダーが伝播されます。Helidonベースのマイクロサービスの場合、Helidonフレームワークがデフォルトでトレース・ヘッダーを伝播するため、トレース・ヘッダーを2回伝播しないように、このプロパティをfalseに設定します。このプロパティをtrueに設定できるのは、Helidon構成でトレース・ヘッダーの伝播が無効になっているときに、MicroTxを使用して分散トレースを有効にする場合です。その他のマイクロサービスの場合は、このプロパティをtrueに設定します。

次の例では、Spring RESTアプリケーションのMicroTxクライアント・ライブラリ・プロパティのサンプル値を指定しています。

spring:
  microtx:
    coordinator-url: http://tmm-app:9000/api/v1
    propagation-active: true

次の例は、JAX-RS、Python、Node.jsアプリケーションなど、他のアプリケーションのMicroTxクライアント・ライブラリ・プロパティのサンプル値を示しています。

oracle.tmm.TcsUrl = http://tmm-app:9000/api/v1
oracle.tmm.PropagateTraceHeaders = true

アプリケーションとMicroTxが同じKubernetesクラスタ内にある場合はHTTPプロトコルを使用し、それ以外の場合はHTTPSプロトコルを使用します。

これらの構成値を環境変数として指定することもできます。プロパティ・ファイルと環境変数の両方に値を指定した場合、環境変数に設定されている値がプロパティ・ファイルの値をオーバーライドすることに注意してください。

次の例は、Spring RESTアプリケーションの環境変数を構成するためのサンプル値を示しています。

export SPRING_MICROTX_COORDINATOR_URL = http://tmm-app:9000/api/v1
export SPRING_MICROTX_PROPAGATION_ACTIVE = true

次の例は、JAX-RS、Python、Node.jsアプリケーションなど、他のアプリケーションの環境変数を構成するためのサンプル値を示しています。

export ORACLE_TMM_TCS_URL = http://tmm-app:9000/api/v1
export ORACLE_TMM_PROPAGATE_TRACE_HEADERS = true

環境変数名では大/小文字が区別されることに注意してください。