Browse Source

fixes for otel in non-controller build

pull/4/head
Grant Limberg 8 months ago
parent
commit
4aea588eef
  1. 2
      make-linux.mk
  2. 5
      service/OneService.cpp

2
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
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();

Loading…
Cancel
Save