Skip to content

Phase 3: per-engine OTLP tracing integrations #3766

Description

@scooby87

Summary

Phase 3 of distributed tracing (epic #3761, design cozystack/community#38): wire each supported managed engine to emit OTLP spans to the per-tenant collector (otel-traces.<tenant-ns>.svc:4317, from phase 2 #3763). One PR per engine, all linked here.

Per the design's §4 per-engine breakdown, depth and mechanism differ per engine:

  • ClickHouse — native opentelemetry_span_log system table (currently disabled via remove="1"); re-enable + add an OTLP export path.
  • NATS — client-side instrumentation (server tracing emits NATS-format, not OTLP).
  • Kafka — JVM/agent or client instrumentation.
  • RabbitMQ — plugin/agent instrumentation.
  • MariaDB — agent/proxy instrumentation.
  • Redis — OTLP exporter/agent sidecar.
  • Postgres — pg_tracing extension (or client-side); a sidecar cannot produce statement-level spans.

Cross-cutting decision (from the design's open question)

Enablement follows the metrics model (platform-configured), not a per-app tracing.enabled toggle; the OTLP endpoint is platform-decided (the in-namespace collector Service), never carried in app values. The concrete Application→HelmRelease wiring is established by the first engine PR (ClickHouse) and reused by the rest.

Tracked under epic #3761.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    area/monitoringIssues or PRs related to the monitoring stack (vlogs, vmstack, grafana, workloadmonitor)kind/featureCategorizes issue or PR as related to a new featurepriority/important-longtermImportant over the long term, but may not be staffed and/or may need multiple releases to completetriage/acceptedIndicates an issue is ready to be actively worked on

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions