Top Description Constructors Methods
io.micrometer.tracing.annotation

public Class SpanTagAnnotationHandler

extends AnnotationHandler<SpanCustomizer>
Class Inheritance
Imports
io.micrometer.common.KeyValue, io.micrometer.common.annotation.NoOpValueResolver, .AnnotationHandler, .ValueExpressionResolver, .ValueResolver, io.micrometer.common.util.StringUtils, io.micrometer.tracing.SpanCustomizer, java.util.function.Function

This class is able to find all methods annotated with the Micrometer Tracing annotations. All methods mean that if you have both an interface and an implementation annotated with Micrometer Tracing annotations then this class is capable of finding both of them and merging into one set of tracing information.

This information is then used to add proper tags to the span from the method arguments that are annotated with SpanTag. Code ported from Spring Cloud Sleuth.

Author
Christian Schwerdtfeger
Since
1.1.0

Constructor Summary

AccessConstructor and Description
public
SpanTagAnnotationHandler(Function<Class<? extends ValueResolver>, ? extends ValueResolver> resolverProvider, Function<Class<? extends ValueExpressionResolver>, ? extends ValueExpressionResolver> expressionResolverProvider)

Method Summary

Modifier and TypeMethod and Description
private static String
resolveTagKey(SpanTag annotation)

pack-priv static String
resolveTagValue(SpanTag annotation, Object argument, Function<Class<? extends ValueResolver>, ? extends ValueResolver> resolverProvider, Function<Class<? extends ValueExpressionResolver>, ? extends ValueExpressionResolver> expressionResolverProvider)

Inherited from io.micrometer.common.annotation.AnnotationHandler:
addAnnotatedParametersgetExpressionResolverProvidergetResolverProvider

Constructor Detail

SpanTagAnnotationHandlerback to summary
public SpanTagAnnotationHandler(Function<Class<? extends ValueResolver>, ? extends ValueResolver> resolverProvider, Function<Class<? extends ValueExpressionResolver>, ? extends ValueExpressionResolver> expressionResolverProvider)

Method Detail

resolveTagKeyback to summary
private static String resolveTagKey(SpanTag annotation)
resolveTagValueback to summary
pack-priv static String resolveTagValue(SpanTag annotation, Object argument, Function<Class<? extends ValueResolver>, ? extends ValueResolver> resolverProvider, Function<Class<? extends ValueExpressionResolver>, ? extends ValueExpressionResolver> expressionResolverProvider)