@@ -2,21 +2,18 @@ package com.softwaremill.bootzooka
22
33import com .softwaremill .bootzooka .admin .VersionApi
44import com .softwaremill .bootzooka .config .Config
5- import com .softwaremill .bootzooka .email .sender .EmailSender
65import com .softwaremill .bootzooka .email .EmailService
6+ import com .softwaremill .bootzooka .email .sender .EmailSender
77import com .softwaremill .bootzooka .http .{HttpApi , HttpConfig }
88import com .softwaremill .bootzooka .infrastructure .{DB , SetCorrelationIdBackend }
99import com .softwaremill .bootzooka .metrics .Metrics
10- import com .softwaremill .bootzooka .passwordreset .{PasswordResetAuthToken , PasswordResetApi }
10+ import com .softwaremill .bootzooka .passwordreset .{PasswordResetApi , PasswordResetAuthToken }
1111import com .softwaremill .bootzooka .security .{ApiKeyAuthToken , ApiKeyService , Auth }
1212import com .softwaremill .bootzooka .user .UserApi
1313import com .softwaremill .bootzooka .util .{Clock , DefaultClock , DefaultIdGenerator , IdGenerator }
1414import com .softwaremill .macwire .{autowire , autowireMembersOf }
1515import io .opentelemetry .api .OpenTelemetry
16- import io .opentelemetry .exporter .otlp .metrics .OtlpGrpcMetricExporter
17- import io .opentelemetry .sdk .OpenTelemetrySdk
18- import io .opentelemetry .sdk .metrics .SdkMeterProvider
19- import io .opentelemetry .sdk .metrics .`export` .PeriodicMetricReader
16+ import io .opentelemetry .sdk .autoconfigure .AutoConfiguredOpenTelemetrySdk
2017import ox .{IO , Ox , tap , useCloseableInScope , useInScope }
2118import sttp .client3 .logging .slf4j .Slf4jLoggingBackend
2219import sttp .client3 .opentelemetry .OpenTelemetryMetricsBackend
@@ -34,7 +31,7 @@ object Dependencies:
3431
3532 def create (using Ox , IO ): Dependencies =
3633 val config = Config .read.tap(Config .log)
37- val otel = createOtel ()
34+ val otel = AutoConfiguredOpenTelemetrySdk .initialize().getOpenTelemetrySdk ()
3835 val sttpBackend = useInScope(
3936 Slf4jLoggingBackend (OpenTelemetryMetricsBackend (new SetCorrelationIdBackend (HttpClientSyncBackend ()), otel), includeTiming = true )
4037 )(_.close())
@@ -58,13 +55,3 @@ object Dependencies:
5855 new Auth (_ : ApiKeyAuthToken , _ : DB , _ : Clock ),
5956 new Auth (_ : PasswordResetAuthToken , _ : DB , _ : Clock )
6057 )
61-
62- private def createOtel (): OpenTelemetry =
63- // An exporter that sends metrics to a collector over gRPC
64- val grpcExporter = OtlpGrpcMetricExporter .builder().build()
65- // A metric reader that exports using the gRPC exporter
66- val metricReader : PeriodicMetricReader = PeriodicMetricReader .builder(grpcExporter).build()
67- // A meter registry whose meters are read by the above reader
68- val meterProvider : SdkMeterProvider = SdkMeterProvider .builder().registerMetricReader(metricReader).build()
69- // An instance of OpenTelemetry using the above meter registry
70- OpenTelemetrySdk .builder().setMeterProvider(meterProvider).build()
0 commit comments