Skip to content

Commit 8c71ef6

Browse files
committed
Initialize health metrics and telemetry collector
1 parent e01d1a9 commit 8c71ef6

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;
@@ -84,8 +85,10 @@
8485
import datadog.trace.core.datastreams.DefaultDataStreamsMonitoring;
8586
import datadog.trace.core.flare.TracerFlarePoller;
8687
import datadog.trace.core.histogram.Histograms;
88+
import datadog.trace.core.monitor.DefaultRumInjectorHealthMetrics;
8789
import datadog.trace.core.monitor.HealthMetrics;
8890
import datadog.trace.core.monitor.MonitoringImpl;
91+
import datadog.trace.core.monitor.RumInjectorHealthMetrics;
8992
import datadog.trace.core.monitor.TracerHealthMetrics;
9093
import datadog.trace.core.propagation.ExtractedContext;
9194
import datadog.trace.core.propagation.HttpCodec;
@@ -205,6 +208,7 @@ public static CoreTracerBuilder builder() {
205208
private final Monitoring performanceMonitoring;
206209

207210
private final HealthMetrics healthMetrics;
211+
private final RumInjectorHealthMetrics rumInjectorHealthMetrics;
208212
private final Recording traceWriteTimer;
209213
private final IdGenerationStrategy idGenerationStrategy;
210214
private final TraceCollector.Factory traceCollectorFactory;
@@ -703,6 +707,15 @@ private CoreTracer(
703707
? new TracerHealthMetrics(this.statsDClient)
704708
: HealthMetrics.NO_OP;
705709
healthMetrics.start();
710+
711+
rumInjectorHealthMetrics =
712+
config.isHealthMetricsEnabled() && config.isRumEnabled()
713+
? new DefaultRumInjectorHealthMetrics(this.statsDClient)
714+
: RumInjectorHealthMetrics.NO_OP;
715+
rumInjectorHealthMetrics.start();
716+
// Register health metrics telemetry collector with RumInjector
717+
RumInjector.setTelemetryCollector((DefaultRumInjectorHealthMetrics) rumInjectorHealthMetrics);
718+
706719
performanceMonitoring =
707720
config.isPerfMetricsEnabled()
708721
? new MonitoringImpl(this.statsDClient, 10, SECONDS)
@@ -1248,6 +1261,7 @@ public void close() {
12481261
tracingConfigPoller.stop();
12491262
pendingTraceBuffer.close();
12501263
writer.close();
1264+
rumInjectorHealthMetrics.close();
12511265
statsDClient.close();
12521266
metricsAggregator.close();
12531267
dataStreamsMonitoring.close();

0 commit comments

Comments
 (0)