@@ -34,12 +34,30 @@ For more information, see the `extendedAgent` task in [build.gradle](build.gradl
34
34
35
35
## Extensions examples
36
36
37
- - Custom ` IdGenerator ` : [ DemoIdGenerator] ( src/main/java/com/example/javaagent/DemoIdGenerator.java )
38
- - Custom ` TextMapPropagator ` : [ DemoPropagator] ( src/main/java/com/example/javaagent/DemoPropagator.java )
39
- - Custom ` Sampler ` : [ DemoSampler] ( src/main/java/com/example/javaagent/DemoSampler.java )
40
- - Custom ` SpanProcessor ` : [ DemoSpanProcessor] ( src/main/java/com/example/javaagent/DemoSpanProcessor.java )
41
- - Custom ` SpanExporter ` : [ DemoSpanExporter] ( src/main/java/com/example/javaagent/DemoSpanExporter.java )
42
- - Additional instrumentation: [ DemoServlet3InstrumentationModule] ( src/main/java/com/example/javaagent/instrumentation/DemoServlet3InstrumentationModule.java )
37
+ [ DemoAutoConfigurationCustomizerProvider ] : src/main/java/com/example/javaagent/DemoAutoConfigurationCustomizerProvider.java
38
+ [ DemoIdGenerator ] : src/main/java/com/example/javaagent/DemoIdGenerator.java
39
+ [ DemoPropagator ] : src/main/java/com/example/javaagent/DemoPropagator.java
40
+ [ DemoSampler ] : src/main/java/com/example/javaagent/DemoSampler.java
41
+ [ DemoSpanProcessor ] : src/main/java/com/example/javaagent/DemoSpanProcessor.java
42
+ [ DemoSpanExporter ] : src/main/java/com/example/javaagent/DemoSpanExporter.java
43
+ [ DemoServlet3InstrumentationModule ] : src/main/java/com/example/javaagent/instrumentation/DemoServlet3InstrumentationModule.java
44
+
45
+ - Custom ` AutoConfigurationCustomizer ` : [ DemoAutoConfigurationCustomizerProvider] [ DemoAutoConfigurationCustomizerProvider ]
46
+ - Custom ` IdGenerator ` : [ DemoIdGenerator] [ DemoIdGenerator ]
47
+ - Custom ` TextMapPropagator ` : [ DemoPropagator] [ DemoPropagator ]
48
+ - Custom ` Sampler ` : [ DemoSampler] [ DemoSampler ]
49
+ - Custom ` SpanProcessor ` : [ DemoSpanProcessor] [ DemoSpanProcessor ]
50
+ - Custom ` SpanExporter ` : [ DemoSpanExporter] [ DemoSpanExporter ]
51
+ - Additional instrumentation: [ DemoServlet3InstrumentationModule] [ DemoServlet3InstrumentationModule ]
52
+
53
+ ` ConfigurablePropagatorProvider ` and ` AutoConfigurationCustomizer ` implementations and custom
54
+ instrumentation (` InstrumentationModule ` ) need the correct SPI (through ` @AutoService ` ) in
55
+ order to be loaded by the agent. Once a ` ConfigurablePropagatorProvider ` is added, it can be
56
+ referenced by name in the ` OTEL_PROPAGATORS ` setting. ` AutoConfigurationCustomizer ` and
57
+ instrumentation will be applied automatically. To apply the other extension classes to the Java
58
+ Agent, include an ` AutoConfigurationCustomizer ` in your extension.
59
+ See [ DemoAutoConfigurationCustomizerProvider] [ DemoAutoConfigurationCustomizerProvider ] for an
60
+ example.
43
61
44
62
## Sample use cases
45
63
0 commit comments