diff --git a/README.md b/README.md index b35bb7e..5fd6db0 100644 --- a/README.md +++ b/README.md @@ -54,6 +54,14 @@ Example screenshot of OTEL tracing captured and shown in Jeager UI: Type `make install-dependencies` to retrieve Go packages needed by the project. +### Configuration + +Open telemetry sampling rate can be configured by setting the `OTEL_SAMPLING_RATE` +environmental variable from 0.0 to 1.0. +0.0 means no tracing and 1.0 means include all traces. +Value is measured in percents. +Therefore 0.5 means 50% of the samples will be collected. + ### Demoing usage ```bash diff --git a/docker-compose.yml b/docker-compose.yml index 92f41e6..19f9ae1 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -17,16 +17,16 @@ services: volumes: - ./otel-collector.yaml:/etc/otel-collector.yaml ports: - - 4317:4317 + - 127.0.0.1:4317:4317 prometheus: image: prom/prometheus:v3.1.0 volumes: - ./prometheus.yaml:/etc/prometheus/prometheus.yml ports: - - 9090:9090 + - 127.0.0.1:9090:9090 jaeger: image: jaegertracing/all-in-one:1.60 ports: - - 16686:16686 + - 127.0.0.1:16686:16686 diff --git a/pkg/tracer/otel.go b/pkg/tracer/otel.go index d9d9e70..4e20ad5 100644 --- a/pkg/tracer/otel.go +++ b/pkg/tracer/otel.go @@ -142,6 +142,7 @@ func (o *OtelTracerMetrics) defaultTracerProvider(ctx context.Context) error { } samplingRate := getSamplerFromEnv() + l.Logger.Info().Msgf("Set OTEL sampling rate to %.2f", samplingRate) // Register the trace exporter with a TracerProvider, using a batch // span processor to aggregate spans before export.