Add OpenTelemetry tracing and log export via OTLP
Shared telemetry init module in compliance-core (behind `telemetry` feature) sets up OTLP/gRPC export for traces and logs when OTEL_EXPORTER_OTLP_ENDPOINT is set. Falls back to console-only output when unset. Both agent and dashboard now use the shared init. Docker Compose includes an OTel Collector service with a config template for SigNoz, Grafana Tempo/Loki, Jaeger, etc. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -9,6 +9,15 @@ workspace = true
|
||||
[features]
|
||||
default = ["mongodb"]
|
||||
mongodb = ["dep:mongodb"]
|
||||
telemetry = [
|
||||
"dep:opentelemetry",
|
||||
"dep:opentelemetry_sdk",
|
||||
"dep:opentelemetry-otlp",
|
||||
"dep:opentelemetry-appender-tracing",
|
||||
"dep:tracing-opentelemetry",
|
||||
"dep:tracing-subscriber",
|
||||
"dep:tracing",
|
||||
]
|
||||
|
||||
[dependencies]
|
||||
serde = { workspace = true }
|
||||
@@ -21,3 +30,10 @@ uuid = { workspace = true }
|
||||
secrecy = { workspace = true }
|
||||
bson = { version = "2", features = ["chrono-0_4"] }
|
||||
mongodb = { workspace = true, optional = true }
|
||||
opentelemetry = { version = "0.29", optional = true }
|
||||
opentelemetry_sdk = { version = "0.29", features = ["rt-tokio"], optional = true }
|
||||
opentelemetry-otlp = { version = "0.29", features = ["grpc-tonic"], optional = true }
|
||||
opentelemetry-appender-tracing = { version = "0.29", optional = true }
|
||||
tracing-opentelemetry = { version = "0.30", optional = true }
|
||||
tracing-subscriber = { workspace = true, optional = true }
|
||||
tracing = { workspace = true, optional = true }
|
||||
|
||||
Reference in New Issue
Block a user