CollabOps

co obs — Observability

Service catalog / log search / trace search / single trace view

co obs inspects your workspace's observability signals from the terminal — the service catalog with health, log search, distributed trace search, and the span tree of a single trace. It uses the same filters as the web Observability pages, and every command accepts --web to open the matching page in the browser instead. co observability is an alias.

Query window (shared options)

services / logs / traces all take the same query-window options. The default is the last hour; giving --from / --to switches to an absolute window and --since is ignored.

co obs logs --since 15m
co obs traces --from 2026-09-21T09:00:00Z --to 2026-09-21T10:00:00Z

co obs services

Lists the services seen in the window as a table, with their health.

co obs services
co obs services --since 24h
co obs services --env production
co obs services --web
OptionDescription
--env <env>Filter by deployment environment
--since <dur>Relative window ending now (e.g. 15m, 1h, 24h, 7d). Default 1h
--from <RFC3339>Absolute window start; overrides --since
--to <RFC3339>Absolute window end; defaults to now
--webOpen the matching web page in the browser instead of printing
-W, --workspace <slug>Workspace slug for this run instead of the saved default (global option)

co obs logs

Searches logs across all services. Levels are not a fixed list — they carry whatever SeverityText each SDK emitted (info · INFO · Information), so --level values are matched as the server stored them.

co obs logs
co obs logs --level ERROR --since 15m
co obs logs --service api-service --grep timeout
co obs logs --level ERROR,WARN -l 200
co obs logs --web
OptionDescription
--level <l1,l2>Filter by level (comma-separated, e.g. ERROR,WARN)
--service <name>Filter by service name
--grep <text>Filter by log body substring (server-side)
-l, --limit <n>Maximum log lines to fetch across pages. Default 100
--since <dur>Relative window ending now (e.g. 15m, 1h, 24h, 7d). Default 1h
--from <RFC3339>Absolute window start; overrides --since
--to <RFC3339>Absolute window end; defaults to now
--webOpen the matching web page in the browser instead of printing
-W, --workspace <slug>Workspace slug for this run instead of the saved default (global option)

co obs traces

Searches distributed traces. Narrow by service, environment, error presence and duration, and pick a sort order.

co obs traces
co obs traces --error --since 15m
co obs traces --service api-service --sort slowest
co obs traces --min-ms 500 --env production
co obs traces --web
OptionDescription
--service <name>Filter by service name
--env <e1,e2>Filter by deployment environment (comma-separated)
--errorOnly traces containing an error span
--min-ms <n>Minimum trace duration in milliseconds
--max-ms <n>Maximum trace duration in milliseconds
--sort <order>Sort order: recent (default)
-l, --limit <n>Maximum traces to fetch across pages. Default 20
--since <dur>Relative window ending now (e.g. 15m, 1h, 24h, 7d). Default 1h
--from <RFC3339>Absolute window start; overrides --since
--to <RFC3339>Absolute window end; defaults to now
--webOpen the matching web page in the browser instead of printing
-W, --workspace <slug>Workspace slug for this run instead of the saved default (global option)

co obs trace <trace-id>

Shows one trace in detail — summary, per-service self time, and the span tree. Take the trace ID from a co obs traces result.

co obs trace 4bf92f3577b34da6a3ce929d0e0e4736
co obs trace 4bf92f3577b34da6a3ce929d0e0e4736 --web
OptionDescription
--webOpen the matching web page in the browser instead of printing
-W, --workspace <slug>Workspace slug for this run instead of the saved default (global option)

Data only appears in workspaces with observability enabled. In environments where observability is not supported yet, the command ends with an error.

Table of Contents