Skip to main content

Observability

Every Dagger operation emits OpenTelemetry traces. You get visibility into what's happening without adding instrumentation.

Dagger Cloud Traces

Dagger Cloud collects traces from all your Dagger runs — local and CI — and presents them in a web interface.

dagger login

After logging in, every dagger command sends traces to your Dagger Cloud dashboard. You get:

  • Timeline view: See all operations with duration and status. Drill into individual traces to understand execution.
  • Error highlighting: Failed steps are surfaced immediately with context — not just the error, but the steps that led up to it.
  • Flame graphs: Understand where time is spent. Each operation shows its proportion of total duration.
  • CI and local traces: Both environments in one view, grouped by git commit. Traces from CI include repository metadata (branch, commit author, status).
  • Search and navigation: Search trace logs by keyword. Breadcrumbs show the full context of any span back to the root.

From the CLI

Open the trace for a run directly in your browser by adding -w/--web:

dagger -w check

Review recent Cloud activity for the current workspace without leaving the terminal:

dagger activity

If you belong to more than one Dagger Cloud organization, scope a command with --org:

dagger --org my-org activity

Traces are useful for debugging failures, optimizing slow workflows, and understanding what your team's Dagger usage looks like across projects.

OpenTelemetry

Dagger's telemetry is built on OpenTelemetry. Each function call is a trace; each operation is a span. This means you can export traces to any OTel-compatible backend:

  • Jaeger
  • Honeycomb
  • Grafana Tempo
  • Any OTel collector

Set custom resource attributes via the standard OTEL_RESOURCE_ATTRIBUTES environment variable.