170.5.6. パフォーマンス統計の粒度のレベルの設定
Camel 2.1 から利用可能
Camel の起動時にパフォーマンス統計が有効になっているかどうかを事前に設定できるようになりました。レベルは以下のようになります。
-
拡張: デフォルトとして、エンドポイントの使用状況を細かく指定するなど、ランタイム時に収集される追加の統計が提供されます。このオプションには Camel 2.16 が必要です。 -
All/Default: Camel はルートおよびプロセッサーの両方の統計を有効にします(詳細にわたります)。Camel 2.16 以降では、All オプションの名前が Default に変更されました。 -
RoutesOnly: Camel はルートの統計のみを有効にします(詳細) -
off- Camel は統計を有効にしません。
Camel 2.9 以降では、パフォーマンスの統計には、CamelContext および Route MBean ごとの平均負荷統計が含まれます。統計は、1 分、5 分、15 分間のインフライトエクスチェンジの数に基づく平均負荷です。これは、Unix システムの負荷統計と似ています。Camel 2.11 以降では、< jmxAgent> に ます。静的レベルも off に設定されている場合、オフになります。Camel 2.13 以降では、負荷パフォーマンスの統計はデフォルトで無効になっています。これを有効にするには、< loadStatisticsEnabled=false を設定することで、負荷パフォーマンスの統計を明示的に無効にできjmxAgent> に ます。
loadStatisticsEnabled=true を設定し
ランタイムでは、常に管理コンソール(JConsole など)を使用して、統計が有効かどうかに関わらず、指定のルートやプロセッサーで変更できます。
統計が有効な意味は何ですか?
統計を有効にすると、Camel はその特定の MBean のパフォーマンス統計を細かく設定することを意味します。完了/失敗、last/total/mina/max/mean 処理時間、first/last failed time など、表示される統計は多数あります。
Java DSL を使用すると、以下でこのレベルを設定します。
// only enable routes when Camel starts
context.getManagementStrategy().setStatisticsLevel(ManagementStatisticsLevel.RoutesOnly);
Spring DSL から以下を行います。
<camelContext id="camel" xmlns="http://camel.apache.org/schema/spring">
<jmxAgent id="agent" statisticsLevel="RoutesOnly"/>
...
</camelContext>