Browse Source

fixes for otel in non-controller build

Grant Limberg 3 weeks ago
parent
commit
4aea588eef
2 changed files with 6 additions and 1 deletions
  1. 1 1
      make-linux.mk
  2. 5 0
      service/OneService.cpp

+ 1 - 1
make-linux.mk

@@ -315,7 +315,7 @@ endif
 OTEL_VERSION=1.21.0
 ifeq (${ZT_OTEL},1)
 	OTEL_INSTALL_DIR=ext/opentelemetry-cpp-${OTEL_VERSION}/localinstall
-	DEFS+=-DZT_OPENTELEMETRY_ENABLED=1
+	override DEFS+=-DZT_OPENTELEMETRY_ENABLED=1
 	INCLUDES+=-I${OTEL_INSTALL_DIR}/include
 	LDLIBS+=-L${OTEL_INSTALL_DIR}/lib -lopentelemetry_exporter_in_memory_metric -lopentelemetry_exporter_in_memory -lopentelemetry_exporter_ostream_logs -lopentelemetry_exporter_ostream_metrics -lopentelemetry_exporter_ostream_span -lopentelemetry_exporter_otlp_grpc  -lopentelemetry_exporter_otlp_grpc_client -lopentelemetry_exporter_otlp_grpc_log -lopentelemetry_exporter_otlp_grpc_metrics -lopentelemetry_otlp_recordable -lopentelemetry_common -lopentelemetry_trace -lopentelemetry_common -lopentelemetry_resources -lopentelemetry_logs -lopentelemetry_metrics -lopentelemetry_proto -lopentelemetry_proto_grpc -lopentelemetry_version -lprotobuf -lgrpc++
 else

+ 5 - 0
service/OneService.cpp

@@ -64,6 +64,8 @@
 #include "opentelemetry/exporters/otlp/otlp_grpc_exporter.h"
 #include "opentelemetry/exporters/otlp/otlp_grpc_log_record_exporter.h"
 #include "opentelemetry/exporters/otlp/otlp_grpc_metric_exporter.h"
+#include "opentelemetry/logs/logger.h"
+#include "opentelemetry/metrics/provider.h"
 #include "opentelemetry/sdk/metrics/export/periodic_exporting_metric_reader.h"
 #include "opentelemetry/sdk/metrics/meter_provider.h"
 #include "opentelemetry/sdk/metrics/metric_reader.h"
@@ -77,6 +79,7 @@
 #include "opentelemetry/sdk/trace/tracer.h"
 #include "opentelemetry/sdk/trace/tracer_context.h"
 #include "opentelemetry/sdk/trace/tracer_provider.h"
+#include "opentelemetry/trace/provider.h"
 
 namespace sdktrace = opentelemetry::v1::sdk::trace;
 namespace sdkmetrics = opentelemetry::v1::sdk::metrics;
@@ -1063,6 +1066,7 @@ class OneServiceImpl : public OneService {
 	void initTracing()
 	{
 		if (! _exporterEndpoint.empty() && _exporterSampleRate > 0.0) {
+			fprintf(stderr, "OpenTelemetry tracing enabled with endpoint %s and sample rate %.2f\n", _exporterEndpoint.c_str(), _exporterSampleRate);
 			// Set up OpenTelemetry exporter and tracer provider
 			opentelemetry::v1::exporter::otlp::OtlpGrpcExporterOptions opts;
 			opts.endpoint = _exporterEndpoint + "/v1/traces";
@@ -1179,6 +1183,7 @@ class OneServiceImpl : public OneService {
 			applyLocalConfig();
 
 #ifdef ZT_OPENTELEMETRY_ENABLED
+			fprintf(stderr, "OneServiceImpl::run: initializing OpenTelemetry...\n");
 			initTracing();
 			initMetrics();
 			initLogging();