Log Viewer
The log viewer is the main screen of the desktop app. It’s a virtualized table (react-virtuoso) that handles 100K+ log entries smoothly, with a filter bar at the top.
Columns
Section titled “Columns”| Column | Default | Description |
|---|---|---|
| Time | Visible | Timestamp of the log entry |
| Level | Visible | info, debug, warn, error 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.
Filtering
Section titled “Filtering”Level toggles
Section titled “Level toggles”Four toggle buttons at the top: info, debug, warn, error. Each shows a per-level badge count. Click to show/hide each level. Multiple can be active simultaneously.
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”.
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 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).
Saved filters
Section titled “Saved filters”Filters are saved configurations that persist. See Filters for details on creating, managing, and organizing filter configs.
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.
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.
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.
- Context Menus (native, right-click):
- Workspace: “Open in New Window”
- Project: “New Filter”, “Project Settings”
- Filter: “Duplicate”, “Delete”