CircuitVerse employes Distributed tracing using Jaeger service and New Relic. Comprehensive documentation is available in the Runbook
Before starting the containers, following environment variables need to be set as mentioned in env.example:
ENABLE_OTEL=true
- in order to generate spansNEW_RELIC_API_KEY=<new-relic-license-key-here>
- API key to aunthenticate to New Relic endpoint (optional)
export ENABLE_OTEL=true
export NEW_RELIC_API_KEY=<new-relic-license-key-here>
cd .otel
docker compose up -d
Navigate to http://localhost:16686/ to view the Jaeger UI dashboard and view the traces.
In order to export Telemetry data to New Relic, you must have New Relic Agent installed and configured on the server.
NEW_RELIC_API_KEY
(license key) can be located within the API keys Dashboard.
New Relic OpenTelemetry endpoints are region-specific, by default it is US based. If you're using the EU data center region, use an EU endpoint in otel-config.yaml.
# EU data center
https://otlp.eu01.nr-data.net
# US data center
https://otlp.nr-data.net
In order to ensure a smooth experience with distributed tracing using New Relic, traces are sent in batch process to avoid rate limiting.
For best practices refer - New Relic otel best practices
- Jaeger UI dashboard: http://localhost:16686
- New Relic dashboard: https://one.newrelic.com/distributed-tracing