- Documentation
- Monitoring
- Search logs by severity and event type
Search logs by severity and event type
Filter the workspace log table by severity level and lifecycle event type to find the exact log lines for a run.
Goal
The Logs table shows every lifecycle event your workflows emit: each step starting, completing, or failing, and each workflow run starting, completing, or failing. This page shows you how to narrow that list down to the lines you care about by severity and by event type.
When to use this
Reach for Logs when you want to scan activity across many runs at once rather than drilling into a single run. Use it to confirm that a workflow started firing after you published it, to pull every error-level line from the last hour, or to watch only step.failed events while you reproduce a problem. If you already know which run you want to inspect, open it directly from Workflow runs instead, where you get the full step timeline.
Open Logs from the sidebar: Monitoring then Logs. The page lives at /{workspaceSlug}/monitoring/logs.
How filtering works
The filter row has four controls plus two buttons, and they do not all behave the same way:
- Search (the text box, placeholder "Search logs...") and the date range picker query the server. Changing them and pressing Search (or Refresh) fetches a fresh set of rows.
- Level and Event Type filter the rows already loaded in the browser. They narrow what is on screen without going back to the server.
In practice that means you set your time window and search term first to pull the right page of rows, then use the Level and Event Type dropdowns to whittle that page down. Severity and event-type filtering is instant because nothing is re-fetched.
Filter by severity
Each log line carries one of four severity levels. The Level dropdown offers all four:
| Label | Value | Use it for |
|---|---|---|
| Debug | debug | Verbose diagnostic lines |
| Info | info | Normal lifecycle progress |
| Warn | warn | Recoverable issues worth a look |
| Error | error | Failures |
In the table, the level renders as an uppercased badge (DEBUG, INFO, WARN, ERROR), so a screen full of red ERROR badges is your fastest read on whether something is wrong.
Set your time window
Click the date range picker (placeholder "Filter by date range") and pick a start and end. Press Search. The table reloads with only the rows inside that window.
Select a level
Open the Level dropdown and choose, for example, Error. The loaded rows collapse to only
error-level lines. No reload happens.Clear the level to widen again
Reset the Level dropdown to show all severities. Because this is a client-side filter, the rows reappear instantly without another fetch.
Filter by lifecycle event type
The Event Type dropdown targets the six lifecycle events a run emits. Each maps to a stored value:
| Label | Value |
|---|---|
| Step Started | step.started |
| Step Completed | step.completed |
| Step Failed | step.failed |
| Workflow Started | workflow.started |
| Workflow Completed | workflow.completed |
| Workflow Failed | workflow.failed |
To trace where runs are breaking, select Step Failed. To confirm a published workflow is actually receiving events, select Workflow Started and watch new rows appear after a trigger fires.
You can combine the two dropdowns. Selecting Error in Level and Step Failed in Event Type leaves only the failure lines, which is the quickest path from "something is wrong" to the specific step that broke.
The Event Type column is an open string, so a run may emit event types beyond the six in the dropdown. Those lines still appear in the table; they just are not selectable from the dropdown. Use the text Search box to match an event type the dropdown does not list.
Read a log row
Every row has the same six columns:
| Column | What it shows |
|---|---|
| Timestamp | Local time as Jun 1, 14:30:05 plus a relative age ("3 minutes ago") |
| Level | The severity badge (DEBUG / INFO / WARN / ERROR) |
| Message | The log message, clamped to two lines (hover to see the full text) |
| Event Type | The lifecycle event value, for example step.completed |
| Run | First 8 characters of the run id, or - if the line is not tied to a run |
| Trace | First 8 characters of the trace id, or - if none |
The Run value is your bridge to the rest of monitoring: copy it, then open the matching run from Workflow runs to see the full step-by-step timeline with input, output, and the error detail for any failed step.
Verify you filtered correctly
After applying a Level and an Event Type filter, check that:
- Every visible Level badge matches the level you selected.
- Every visible Event Type badge matches the value you selected.
- The time on each row falls inside the date range you searched.
If you selected Error and Step Failed but still see INFO rows, the dropdowns did not register. Re-open them and confirm the selection is highlighted, then look again. No reload is needed for level or event-type changes.
Troubleshooting
The table is empty after searching. Logs are kept for a limited window, so an old date range can return nothing. Widen the range, press Search, then re-apply your Level and Event Type filters. Also confirm the workflow actually ran in that window by checking Workflow runs.
A level or event-type filter shows fewer rows than expected. The Level and Event Type dropdowns only filter rows already loaded. If the line you want is in a different time window, it was never fetched. Adjust the date range and press Search first, then filter.
"Failed to load monitoring logs" appears. The fetch failed. Press Refresh to retry. If it keeps failing, confirm you have monitoring access in this workspace; the Logs page requires it.
You cannot find a specific event type in the dropdown. Only the six listed lifecycle events are selectable. For anything else, type the event value into the Search box and press Search.
Related
- Workflow runs: find and filter runs by status, then open one.
- Debug a failed run: read the error code and provider status on the step that broke.
- Read one run in detail: the per-step timeline behind a Run id.