Skip to content

Commit d0334b8

Browse files
committed
Initialize health metrics and telemetry collector
1 parent 9af02e9 commit d0334b8

File tree

1 file changed

+14
-0
lines changed

1 file changed

+14
-0
lines changed

dd-trace-core/src/main/java/datadog/trace/core/CoreTracer.java

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@
4949
import datadog.trace.api.metrics.SpanMetricRegistry;
5050
import datadog.trace.api.naming.SpanNaming;
5151
import datadog.trace.api.remoteconfig.ServiceNameCollector;
52+
import datadog.trace.api.rum.RumInjector;
5253
import datadog.trace.api.sampling.PrioritySampling;
5354
import datadog.trace.api.scopemanager.ScopeListener;
5455
import datadog.trace.api.time.SystemTimeSource;
@@ -83,8 +84,10 @@
8384
import datadog.trace.core.datastreams.DefaultDataStreamsMonitoring;
8485
import datadog.trace.core.flare.TracerFlarePoller;
8586
import datadog.trace.core.histogram.Histograms;
87+
import datadog.trace.core.monitor.DefaultRumInjectorHealthMetrics;
8688
import datadog.trace.core.monitor.HealthMetrics;
8789
import datadog.trace.core.monitor.MonitoringImpl;
90+
import datadog.trace.core.monitor.RumInjectorHealthMetrics;
8891
import datadog.trace.core.monitor.TracerHealthMetrics;
8992
import datadog.trace.core.propagation.ExtractedContext;
9093
import datadog.trace.core.propagation.HttpCodec;
@@ -204,6 +207,7 @@ public static CoreTracerBuilder builder() {
204207
private final Monitoring performanceMonitoring;
205208

206209
private final HealthMetrics healthMetrics;
210+
private final RumInjectorHealthMetrics rumInjectorHealthMetrics;
207211
private final Recording traceWriteTimer;
208212
private final IdGenerationStrategy idGenerationStrategy;
209213
private final TraceCollector.Factory traceCollectorFactory;
@@ -702,6 +706,15 @@ private CoreTracer(
702706
? new TracerHealthMetrics(this.statsDClient)
703707
: HealthMetrics.NO_OP;
704708
healthMetrics.start();
709+
710+
rumInjectorHealthMetrics =
711+
config.isHealthMetricsEnabled() && config.isRumEnabled()
712+
? new DefaultRumInjectorHealthMetrics(this.statsDClient)
713+
: RumInjectorHealthMetrics.NO_OP;
714+
rumInjectorHealthMetrics.start();
715+
// Register health metrics telemetry collector with RumInjector
716+
RumInjector.setTelemetryCollector((DefaultRumInjectorHealthMetrics) rumInjectorHealthMetrics);
717+
705718
performanceMonitoring =
706719
config.isPerfMetricsEnabled()
707720
? new MonitoringImpl(this.statsDClient, 10, SECONDS)
@@ -1247,6 +1260,7 @@ public void close() {
12471260
tracingConfigPoller.stop();
12481261
pendingTraceBuffer.close();
12491262
writer.close();
1263+
rumInjectorHealthMetrics.close();
12501264
statsDClient.close();
12511265
metricsAggregator.close();
12521266
dataStreamsMonitoring.close();

0 commit comments

Comments
 (0)