In SBT:
libraryDependencies += "com.osinka.camel" %% "camel-kamon" % "1.0.0-SNAPSHOT"
Unlike Kamon modules, this is a library that needs explicit configuration.
In Spring configuration:
<bean id="kamonRoutePolicyFactory" class="com.osinka.camel.kamon.KamonRoutePolicyFactory"/>
or programmatically:
import com.osinka.camel.kamon.KamonRoutePolicyFactory
camelContext.addRoutePolicyFactory(new KamonRoutePolicyFactory)
Only routes and processors with custom ID will be measured. Routes provide completion ("total", "success", "failure") metrics and trace contexts as well. Processors provide completion metrics and segments within the route's trace context.
Kamon needs to be started before Camel creates its routes. Use the provided KamonService
to make sure Kamon is up if you don't use other mechanisms.
In Spring configuration:
<bean id="kamonService" class="com.osinka.camel.kamon.KamonService"/>
or programmatically:
import com.osinka.camel.kamon.KamonService
camelContext.addService(new KamonService)