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>DECORATORSprotected booleanencoding
-
Constructor Summary
Constructors Constructor Description Tracer()
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description voidaddDecorator(SpanDecorator decorator)voidaddExcludePattern(String pattern)Adds an exclude pattern that will disable tracing for Camel messages that matches the pattern.org.apache.camel.spi.RoutePolicycreateRoutePolicy(org.apache.camel.CamelContext camelContext, String routeId, org.apache.camel.NamedNode route)protected voiddoInit()protected voiddoShutdown()protected abstract voidfinishSpan(SpanAdapter span)org.apache.camel.CamelContextgetCamelContext()Set<String>getExcludePatterns()protected SpanDecoratorgetSpanDecorator(org.apache.camel.Endpoint endpoint)org.apache.camel.spi.InterceptStrategygetTracingStrategy()Returns the currently used tracing strategy which is responsible for tracking invoked EIP or beans.voidinit(org.apache.camel.CamelContext camelContext)Registers thisTraceron theCamelContextif not already registered.protected abstract voidinitTracer()protected abstract voidinject(SpanAdapter span, InjectAdapter adapter)booleanisEncoding()voidsetCamelContext(org.apache.camel.CamelContext camelContext)voidsetEncoding(boolean encoding)voidsetExcludePatterns(Set<String> excludePatterns)voidsetTracingStrategy(org.apache.camel.spi.InterceptStrategy tracingStrategy)Specifies the instance responsible for tracking invoked EIP and beans with Tracing.protected abstract SpanAdapterstartExchangeBeginSpan(org.apache.camel.Exchange exchange, SpanDecorator sd, String operationName, SpanKind kind, SpanAdapter parent)protected abstract SpanAdapterstartSendingEventSpan(String operationName, SpanKind kind, SpanAdapter parent, org.apache.camel.Exchange exchange, InjectAdapter injectAdapter)-
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, org.apache.camel.Exchange exchange, InjectAdapter injectAdapter)
-
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:
getCamelContextin interfaceorg.apache.camel.CamelContextAware
-
setCamelContext
public void setCamelContext(org.apache.camel.CamelContext camelContext)
- Specified by:
setCamelContextin 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:
createRoutePolicyin interfaceorg.apache.camel.spi.RoutePolicyFactory
-
init
public void init(org.apache.camel.CamelContext camelContext)
Registers thisTraceron theCamelContextif not already registered.
-
doInit
protected void doInit() throws Exception- Overrides:
doInitin classorg.apache.camel.support.service.BaseService- Throws:
Exception
-
doShutdown
protected void doShutdown() throws Exception- Overrides:
doShutdownin classorg.apache.camel.support.service.BaseService- Throws:
Exception
-
getSpanDecorator
protected SpanDecorator getSpanDecorator(org.apache.camel.Endpoint endpoint)
-
-