88import com .linecorp .armeria .client .HttpClient ;
99import com .linecorp .armeria .server .HttpService ;
1010import io .opentelemetry .api .GlobalOpenTelemetry ;
11- import io .opentelemetry .instrumentation .api .incubator .semconv .http .HttpClientPeerServiceAttributesExtractor ;
11+ import io .opentelemetry .instrumentation .api .incubator .builder .internal .HttpClientInstrumenterBuilder ;
12+ import io .opentelemetry .instrumentation .api .incubator .builder .internal .HttpServerInstrumenterBuilder ;
1213import io .opentelemetry .instrumentation .armeria .v1_3 .ArmeriaTelemetry ;
13- import io .opentelemetry .instrumentation .armeria .v1_3 .internal . ArmeriaHttpClientAttributesGetter ;
14+ import io .opentelemetry .instrumentation .armeria .v1_3 .ArmeriaTelemetryBuilder ;
1415import io .opentelemetry .javaagent .bootstrap .internal .CommonConfig ;
1516import java .util .function .Function ;
1617
@@ -22,28 +23,16 @@ public final class ArmeriaSingletons {
2223 public static final Function <? super HttpService , ? extends HttpService > SERVER_DECORATOR ;
2324
2425 static {
25- ArmeriaTelemetry telemetry =
26- ArmeriaTelemetry .builder (GlobalOpenTelemetry .get ())
27- .setCapturedClientRequestHeaders (CommonConfig .get ().getClientRequestHeaders ())
28- .setCapturedClientResponseHeaders (CommonConfig .get ().getClientResponseHeaders ())
29- .setCapturedServerRequestHeaders (CommonConfig .get ().getServerRequestHeaders ())
30- .setCapturedServerResponseHeaders (CommonConfig .get ().getServerResponseHeaders ())
31- .setKnownMethods (CommonConfig .get ().getKnownHttpRequestMethods ())
32- .addClientAttributeExtractor (
33- HttpClientPeerServiceAttributesExtractor .create (
34- ArmeriaHttpClientAttributesGetter .INSTANCE ,
35- CommonConfig .get ().getPeerServiceResolver ()))
36- .setEmitExperimentalHttpClientMetrics (
37- CommonConfig .get ().shouldEmitExperimentalHttpClientTelemetry ())
38- .setEmitExperimentalHttpServerMetrics (
39- CommonConfig .get ().shouldEmitExperimentalHttpServerTelemetry ())
40- .build ();
26+ ArmeriaTelemetryBuilder builder = ArmeriaTelemetry .builder (GlobalOpenTelemetry .get ());
27+ HttpClientInstrumenterBuilder .configure (CommonConfig .get (), builder );
28+ HttpServerInstrumenterBuilder .configure (CommonConfig .get (), builder );
29+ ArmeriaTelemetry telemetry = builder .build ();
4130
4231 CLIENT_DECORATOR = telemetry .newClientDecorator ();
4332 Function <? super HttpService , ? extends HttpService > libraryDecorator =
4433 telemetry
4534 .newServiceDecorator ()
46- .compose (service -> new ResponseCustomizingDecorator ( service ) );
35+ .compose (ResponseCustomizingDecorator :: new );
4736 SERVER_DECORATOR = service -> new ServerDecorator (service , libraryDecorator .apply (service ));
4837 }
4938
0 commit comments