Log Viewer
The log viewer is the main screen of the desktop app. It’s a virtualized table that handles 100K+ log entries smoothly, with a filter bar at the top.
Columns
Section titled “Columns”| Column | Default | Description |
|---|---|---|
| Select | Visible | Checkbox for multi-select |
| Time | Visible | Timestamp of the log entry |
| Level | Visible | info, debug, warn, error, fatal with color coding |
| Bucket | Visible | Which bucket the log belongs to |
| Message | Visible | The log message |
| Tags | Visible | Tag key-value pairs |
| User | Visible | User ID (from setUser()) |
Toggle column visibility with the column selector dropdown in the filter bar.
Log selection
Section titled “Log selection”- Checkbox column for multi-select
- Click checkbox to select,
Cmd/Ctrl+Clickto toggle,Shift+Clickfor range selection - Header checkbox for select all / deselect all
Cmd+Aselects all loaded logs- Selected rows get a subtle green highlight
Bulk actions
Section titled “Bulk actions”Right-click on multi-selected logs for a context menu with:
- “Copy N logs as JSON”
- “Copy N logs as text”
- “Export N selected logs”
- “Delete N selected logs”
Filtering
Section titled “Filtering”Level toggles
Section titled “Level toggles”Five toggle buttons at the top: info, debug, warn, error, fatal. Each shows a per-level badge count. Click to show/hide each level. Multiple can be active simultaneously. Keyboard shortcuts: Cmd+1 (Info), Cmd+2 (Debug), Cmd+3 (Warn), Cmd+4 (Error).
Message search
Section titled “Message search”Substring search across log messages. Type in the search box and results filter in real-time.
Bucket filter
Section titled “Bucket filter”Multi-select dropdown showing all buckets in the current project with log counts per bucket. Select one or more to show only logs from those buckets.
Tag filters
Section titled “Tag filters”Dynamic dropdowns for each tag key discovered in your logs. Up to 4 shown inline in the filter bar; overflow tags are accessible via a “More Filters” drawer. Each dropdown shows unique values with counts and has “Select All”/“None” footer controls. Multiple tag filters are AND-combined (values within a key are OR).
Time range
Section titled “Time range”Presets: 5 minutes, 15 minutes, 1 hour, 6 hours, 24 hours, or “All time”. Also supports custom range with from/to Unix ms timestamps.
Active filter chips
Section titled “Active filter chips”When filters are active, chips appear below the filter bar showing what’s applied. Click the X on any chip to remove that filter.
Real-time streaming
Section titled “Real-time streaming”New logs appear at the bottom of the table automatically. A green fade animation highlights new entries for 3 seconds.
Pause/resume
Section titled “Pause/resume”Click the pause button or use Cmd+P to freeze the view. While paused:
- New logs are still received and stored
- A floating pill shows “N new logs”
- Click the pill or the play button to resume and catch up
This is useful when you’re reading a specific log and don’t want the view jumping around.
Expanding rows
Section titled “Expanding rows”Click the expand icon on any row to view full context JSON, tags, and metadata inline.
Log inspector
Section titled “Log inspector”Click a log row to open it in a dedicated inspector window (separate floating window, 700x800). Shows:
- Full message text
- Context object (collapsible JSON viewer with depth control)
- Tags as chips
- All metadata fields: app name/version, env, user ID, session ID, trace ID
- Timestamps
Reuses the existing inspector window for the same log ID.
Pagination
Section titled “Pagination”Scroll-up pagination: automatically loads older logs when scrolling up using cursor-based pagination (beforeId).
Export
Section titled “Export”Export logs to JSON or CSV via save dialog (Cmd+E or Logs > Export Logs). Choose scope: all loaded logs or selected only. Also available from the bulk context menu.
Saved filters
Section titled “Saved filters”Filters are saved configurations that persist. See Filters for details on creating, managing, and organizing filter configs.
Default filter
Section titled “Default filter”Every project starts with an All Logs filter. It shows everything, unfiltered. It’s read-only — cannot be deleted or renamed.
Unsaved changes
Section titled “Unsaved changes”When you modify a saved filter’s settings, a save button appears. Changes are local until you explicitly save. You can save or discard to revert.
Project dashboard
Section titled “Project dashboard”Accessed by clicking a project name in the sidebar. Shows:
- Stats Cards: Total logs, bucket count, filter count, custom tag count.
- Filters List: All root-level filters and folder groups with click-to-navigate.
- Custom Tags: Tag keys with their discovered values (up to 10 shown, “+N more” overflow).
- Buckets List: All buckets with creation dates.
Sidebar
Section titled “Sidebar”- Workspace Switcher: Dropdown at top to switch between workspaces. Filters the project list. Persists last selected workspace across restarts.
- Project Tree: Hierarchical tree with projects, filters, and folders. Collapsible project nodes.
- Toggle:
Cmd+B/Ctrl+B - Context Menus (native, right-click):
- Workspace: “Open in New Window”
- Project: “New Filter”, “Project Settings”
- Filter: “Duplicate”, “Delete”