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.