Executor モードでのサービスエンドポイントの動作

サービスエンドポイントの動作は、Constructor モードと Executor モードでは異なります。Constructor モードでは、各非同期トランザクションセグメントが独自のサービスエンドポイントによって表され、トランザクション エントリ ポイントに対応するサービスエンドポイントには、次のように開始スレッドの実行時間が表示されます。

サービスエンドポイント

Executor のインストルメンテーション方式を使用すると、単一のサービスエンドポイントのメトリックが報告され、次のように非同期トランザクション全体の実行時間に対応する応答時間が表示されます。

エグゼキュータのインストルメンテーション

現在、各サービスのエントリポイントはトランザクション エントリ ポイントと一致している必要があります。非同期トランザクションの実行中における他のポイントでのサービスエンドポイント設定は、Executor モードではサポートされていません。また、サービスエンドポイントは、エージェントが Executor モードのときに、ビジネストランザクションを実行するコンテキスト内に配置された場合にのみ報告されます。

未処理スレッドのサポート

未処理スレッドのサポートは、Executor モードと Constructor モードでは異なります。Constructor モードはトランザクションのコンテキストで作成されたすべてのスレッドのトラッキングをサポートしますが、Executor モードはトランザクションのコンテキストで開始される非デーモンスレッドのみをサポートします。デーモンのステータスは親スレッドから継承され、予期しない結果が発生する可能性があります。たとえば、アプリケーションサーバーのワーカースレッドは多くの場合、デーモンスレッドであるため、サーブレットコード内で直接開始されたスレッドは、アプリケーションが明示的にデーモンのステータスを解除しない限り、Executor モードではトラッキングされません。