178.5.6. 성능 통계의 세분성 수준 구성
Camel 2.1에서 사용 가능
이제 Camel을 시작할 때 성능 통계가 활성화되어 있는지 여부를 사전 설정 수준을 설정할 수 있습니다. 수준은 다음과 같습니다.
-
확장 - 기본이지만, 엔드포인트의 세분화된 수준 등과 같은 런타임 중에 수집된 추가 통계가 있습니다. 이 옵션에는 Camel 2.16이 필요합니다. -
모든/Default- Camel은 경로 및 프로세서 모두에 대한 통계를 활성화합니다(분단위). Camel 2.16 이후 모든 옵션의 이름이 Default로 변경되었습니다. -
RoutesOnly- Camel은 경로의 통계만 활성화합니다(스플란드). -
off- Camel은 어떤 경우에도 통계를 사용할 수 없습니다.
Camel 2.9 에서 성능 통계에는 CamelContext 및 Route MBean당 평균 부하 통계도 포함됩니다. 통계는 1개, 5분, 15분당 대리점 수에 따라 평균 부하입니다. 이는 Unix 시스템의 통계 로드와 유사합니다. Camel 2.11 이후에서는 < jmxAgent >에서 loadStatisticsEnabled=false 를 설정하여 로드 성능 통계를 명시적으로 비활성화할 수 있습니다. statics 수준이 off 로 구성된 경우 해제됩니다.Note that it will be off if the statics level is configured to off. Camel 2.13 에서 로드 성능 통계는 기본적으로 비활성화되어 있습니다. < jmxAgent>에서 .
loadStatisticsEnabled=true 를 설정하여 이를 활성화할 수 있습니다
런타임에는 항상 관리 콘솔(예: JConsole)을 사용하여 통계 사용 여부에 관계없이 지정된 경로 또는 프로세서를 변경할 수 있습니다.
사용 가능한 통계는 무엇을 의미합니까?
통계가 활성화되어 있음은 Camel이 특정 MBean에 대한 성능 통계를 세부적으로 수행할 수 있음을 의미합니다. 볼 수 있는 통계는 완료된 교환 횟수, last/total/mina/max/mean 처리 시간, first/last 실패 시간 등 많습니다.
Java DSL을 사용하면 다음을 통해 이 수준을 설정할 수 있습니다.
// only enable routes when Camel starts context.getManagementStrategy().setStatisticsLevel(ManagementStatisticsLevel.RoutesOnly);
// 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>
<camelContext id="camel" xmlns="http://camel.apache.org/schema/spring">
<jmxAgent id="agent" statisticsLevel="RoutesOnly"/>
...
</camelContext>