Logs & telemetry
Logs, traces and metrics are all queryable in-product. You do not need an external observability tool open to answer why a request failed, and everything you can see is scoped to your own organization.
Where to look
There are two altitudes. Project-level pages answer questions about one application; organization-level pages answer questions across everything you run.
| Parameter | Type | Description |
|---|---|---|
| /orgs/<org>/projects/<project>/observability | project | Overview with live log and trace volume, linking to logs, metrics, traces and the service map for that project. |
| /orgs/<org>/platform/logs | organization | Org-wide log exploration with filters and saved searches. |
| /orgs/<org>/platform/traces | organization | Org-wide trace search and drilldown. |
| /orgs/<org>/platform/live-tail | organization | Streaming logs and traces as they arrive. |
| /orgs/<org>/platform/dashboards | organization | Saved dashboards. |
Who can see what
Project-level observability follows project access: if you can see the project, you can see its logs, metrics and traces.
The organization-level pages under /orgs/<org>/platform/ are restricted to owners and admins, and each is independently feature-gated. Logs, traces and live tail can be enabled separately, so having one does not imply having the others. When a page is unavailable you are redirected with the reason attached rather than shown an empty screen.
Searching logs
Log search is a full-text query over the log body plus a set of structured filters, returned newest first. Results are cursor-paged: a response carries a cursor you pass to the next call to get a stable next window, rather than an offset that shifts as new logs arrive.
A page returns 40 results by default and will not return more than 200 at a time. If you are pulling a large window, page through it — asking for a bigger limit will not get you one.
Log search filters
| Parameter | Type | Description |
|---|---|---|
| query | string | Full-text search over the log body. |
| service | string | Exact service name match. |
| severity | string | Severity level, for example ERROR, WARN or INFO. |
| from / to | ISO 8601 | Inclusive start and end of the time range. |
| projectId | string | Narrow to one project. |
| serviceId | string | Narrow to one service within a project. |
| namespace | string | Narrow to a Kubernetes namespace. |
| limit / cursor | paging | Page size (default 40, maximum 200) and the cursor from the previous call. |
The logs page accepts these as query-string parameters, so a filtered view is a shareable URL. It also accepts a trace identifier, which is how the trace view jumps you to the log lines belonging to one trace.
Traces
Trace search takes the same shape as log search — a text query over span names and attributes, plus service, status and time-range filters, with the same cursor paging and the same 40/200 limits.
Opening a trace gives you its ordered spans together with the log lines correlated to it, in one view. That correlation is the point: you do not have to copy a trace identifier into a separate log search to see what a failing span actually printed.
Live tail
Live tail streams log lines and trace rows as they arrive, filtered by query, service, severity or namespace, and optionally starting from a point in the recent past rather than from now.
Each streamed log line carries its timestamp, service, severity, body and trace identifier — so a line that looks interesting in the stream can be taken straight into a trace drilldown.
Saved searches
A filter combination you keep re-typing can be saved, listed and deleted from the logs page. Applying a saved search navigates to the logs page with its filters already in the URL, which is also what makes it shareable with a colleague.
Deploy logs from the CLI
Build and deploy logs for a single deployment are available directly from the CLI. The deployment ID may be a short prefix — the same one shown in the deploy list — rather than the full identifier.
platform logs <deploymentId>
platform logs <deploymentId> --tail 100
platform logs <deploymentId> --follow| Parameter | Type | Description |
|---|---|---|
| --tail | number | Show only the last N lines. |
| --follow, -f | boolean | Keep polling for new lines until the deployment reaches a terminal status, then exit. |
--follow stops on its own when the deployment finishes, so it is safe to use as the last step of a script without a timeout around it.