Package org.apache.camel.tracing
Class Tracer
- java.lang.Object
-
- org.apache.camel.support.service.BaseService
-
- org.apache.camel.support.service.ServiceSupport
-
- org.apache.camel.tracing.Tracer
-
- All Implemented Interfaces:
AutoCloseable
,org.apache.camel.CamelContextAware
,org.apache.camel.Service
,org.apache.camel.ShutdownableService
,org.apache.camel.spi.RoutePolicyFactory
,org.apache.camel.StatefulService
,org.apache.camel.StaticService
,org.apache.camel.SuspendableService
public abstract class Tracer extends org.apache.camel.support.service.ServiceSupport implements org.apache.camel.spi.RoutePolicyFactory, org.apache.camel.StaticService, org.apache.camel.CamelContextAware
-
-
Field Summary
Fields Modifier and Type Field Description protected static Map<String,SpanDecorator>
DECORATORS
protected boolean
encoding
-
Constructor Summary
Constructors Constructor Description Tracer()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description void
addDecorator(SpanDecorator decorator)
void
addExcludePattern(String pattern)
Adds an exclude pattern that will disable tracing for Camel messages that matches the pattern.org.apache.camel.spi.RoutePolicy
createRoutePolicy(org.apache.camel.CamelContext camelContext, String routeId, org.apache.camel.NamedNode route)
protected void
doInit()
protected void
doShutdown()
protected abstract void
finishSpan(SpanAdapter span)
org.apache.camel.CamelContext
getCamelContext()
Set<String>
getExcludePatterns()
protected SpanDecorator
getSpanDecorator(org.apache.camel.Endpoint endpoint)
org.apache.camel.spi.InterceptStrategy
getTracingStrategy()
Returns the currently used tracing strategy which is responsible for tracking invoked EIP or beans.void
init(org.apache.camel.CamelContext camelContext)
Registers thisTracer
on theCamelContext
if not already registered.protected abstract void
initTracer()
protected abstract void
inject(SpanAdapter span, InjectAdapter adapter)
boolean
isEncoding()
void
setCamelContext(org.apache.camel.CamelContext camelContext)
void
setEncoding(boolean encoding)
void
setExcludePatterns(Set<String> excludePatterns)
void
setTracingStrategy(org.apache.camel.spi.InterceptStrategy tracingStrategy)
Specifies the instance responsible for tracking invoked EIP and beans with Tracing.protected abstract SpanAdapter
startExchangeBeginSpan(org.apache.camel.Exchange exchange, SpanDecorator sd, String operationName, SpanKind kind, SpanAdapter parent)
protected abstract SpanAdapter
startSendingEventSpan(String operationName, SpanKind kind, SpanAdapter parent)
-
Methods inherited from class org.apache.camel.support.service.BaseService
build, doBuild, doFail, doLifecycleChange, doResume, doStart, doStop, doSuspend, fail, getStatus, init, isBuild, isInit, isNew, isRunAllowed, isShutdown, isStarted, isStarting, isStartingOrStarted, isStopped, isStopping, isStoppingOrStopped, isSuspended, isSuspending, isSuspendingOrSuspended, resume, shutdown, start, stop, suspend
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
-
-
-
Field Detail
-
DECORATORS
protected static final Map<String,SpanDecorator> DECORATORS
-
encoding
protected boolean encoding
-
-
Method Detail
-
initTracer
protected abstract void initTracer()
-
startSendingEventSpan
protected abstract SpanAdapter startSendingEventSpan(String operationName, SpanKind kind, SpanAdapter parent)
-
startExchangeBeginSpan
protected abstract SpanAdapter startExchangeBeginSpan(org.apache.camel.Exchange exchange, SpanDecorator sd, String operationName, SpanKind kind, SpanAdapter parent)
-
finishSpan
protected abstract void finishSpan(SpanAdapter span)
-
inject
protected abstract void inject(SpanAdapter span, InjectAdapter adapter)
-
getTracingStrategy
public org.apache.camel.spi.InterceptStrategy getTracingStrategy()
Returns the currently used tracing strategy which is responsible for tracking invoked EIP or beans.- Returns:
- The currently used tracing strategy
-
setTracingStrategy
public void setTracingStrategy(org.apache.camel.spi.InterceptStrategy tracingStrategy)
Specifies the instance responsible for tracking invoked EIP and beans with Tracing.- Parameters:
tracingStrategy
- The instance which tracks invoked EIP and beans
-
addDecorator
public void addDecorator(SpanDecorator decorator)
-
getCamelContext
public org.apache.camel.CamelContext getCamelContext()
- Specified by:
getCamelContext
in interfaceorg.apache.camel.CamelContextAware
-
setCamelContext
public void setCamelContext(org.apache.camel.CamelContext camelContext)
- Specified by:
setCamelContext
in interfaceorg.apache.camel.CamelContextAware
-
isEncoding
public boolean isEncoding()
-
setEncoding
public void setEncoding(boolean encoding)
-
addExcludePattern
public void addExcludePattern(String pattern)
Adds an exclude pattern that will disable tracing for Camel messages that matches the pattern.- Parameters:
pattern
- the pattern such as route id, endpoint url
-
createRoutePolicy
public org.apache.camel.spi.RoutePolicy createRoutePolicy(org.apache.camel.CamelContext camelContext, String routeId, org.apache.camel.NamedNode route)
- Specified by:
createRoutePolicy
in interfaceorg.apache.camel.spi.RoutePolicyFactory
-
init
public void init(org.apache.camel.CamelContext camelContext)
Registers thisTracer
on theCamelContext
if not already registered.
-
doInit
protected void doInit() throws Exception
- Overrides:
doInit
in classorg.apache.camel.support.service.BaseService
- Throws:
Exception
-
doShutdown
protected void doShutdown() throws Exception
- Overrides:
doShutdown
in classorg.apache.camel.support.service.BaseService
- Throws:
Exception
-
getSpanDecorator
protected SpanDecorator getSpanDecorator(org.apache.camel.Endpoint endpoint)
-
-