Package io.micrometer.tracing.annotation
Class ImperativeMethodInvocationProcessor
java.lang.Object
io.micrometer.tracing.annotation.ImperativeMethodInvocationProcessor
- All Implemented Interfaces:
MethodInvocationProcessor
Method Invocation processor for imperative code. Code ported from Spring Cloud Sleuth.
- Since:
- 1.1.0
-
Constructor Summary
ConstructorsConstructorDescriptionImperativeMethodInvocationProcessor(NewSpanParser newSpanParser, Tracer tracer) Creates a new instance ofImperativeMethodInvocationProcessor.ImperativeMethodInvocationProcessor(NewSpanParser newSpanParser, Tracer tracer, SpanTagAnnotationHandler spanTagAnnotationHandler) Creates a new instance ofImperativeMethodInvocationProcessor.ImperativeMethodInvocationProcessor(NewSpanParser newSpanParser, Tracer tracer, Function<Class<? extends io.micrometer.common.annotation.ValueResolver>, ? extends io.micrometer.common.annotation.ValueResolver> resolverProvider, Function<Class<? extends io.micrometer.common.annotation.ValueExpressionResolver>, ? extends io.micrometer.common.annotation.ValueExpressionResolver> expressionResolverProvider) Creates a new instance ofImperativeMethodInvocationProcessor. -
Method Summary
Modifier and TypeMethodDescriptionprocess(org.aopalliance.intercept.MethodInvocation invocation, NewSpan newSpan, ContinueSpan continueSpan) Executes the annotated method.voidsetSpanTagAnnotationHandler(SpanTagAnnotationHandler spanTagAnnotationHandler) Setting this enables support forSpanTag.
-
Constructor Details
-
ImperativeMethodInvocationProcessor
public ImperativeMethodInvocationProcessor(NewSpanParser newSpanParser, Tracer tracer, Function<Class<? extends io.micrometer.common.annotation.ValueResolver>, ? extends io.micrometer.common.annotation.ValueResolver> resolverProvider, Function<Class<? extends io.micrometer.common.annotation.ValueExpressionResolver>, ? extends io.micrometer.common.annotation.ValueExpressionResolver> expressionResolverProvider) Creates a new instance ofImperativeMethodInvocationProcessor.- Parameters:
newSpanParser- new span parsertracer- tracerresolverProvider- converts a class into an instance of resolver providerexpressionResolverProvider- converts a class into an instance of expression resolver provider
-
ImperativeMethodInvocationProcessor
Creates a new instance ofImperativeMethodInvocationProcessor.- Parameters:
newSpanParser- new span parsertracer- tracer
-
ImperativeMethodInvocationProcessor
public ImperativeMethodInvocationProcessor(NewSpanParser newSpanParser, Tracer tracer, @Nullable SpanTagAnnotationHandler spanTagAnnotationHandler) Creates a new instance ofImperativeMethodInvocationProcessor.- Parameters:
newSpanParser- new span parsertracer- tracerspanTagAnnotationHandler- resolves tags to be added to the span from the annotations
-
-
Method Details
-
process
public Object process(org.aopalliance.intercept.MethodInvocation invocation, NewSpan newSpan, ContinueSpan continueSpan) throws Throwable Description copied from interface:MethodInvocationProcessorExecutes the annotated method.- Parameters:
invocation- method invocationnewSpan- annotationcontinueSpan- annotation- Returns:
- executed method result
- Throws:
Throwable- exception upon running a method
-
setSpanTagAnnotationHandler
Setting this enables support forSpanTag.- Parameters:
spanTagAnnotationHandler- span tag annotation handler
-