Log Streamer
Tail and search application and infrastructure logs in real time.
Overview
The Log Streamer connects to one or more log sources and displays their output in a live-updating viewer. Connect file paths, syslog endpoints, or Docker container log streams. Search and filter the incoming lines with plain text or regex, apply severity highlighting, and export captured snippets — all in a single browser tab without needing SSH access.
Real-Time Tail
New log lines appear in the viewer as they are written. Auto-scroll follows the latest output. Click Pause to freeze the view for inspection.
Regex Search
Filter incoming lines by plain text or JavaScript-compatible regex. Non-matching lines are hidden; matching lines are highlighted.
Multiple Sources
Open up to 4 log sources simultaneously in tabs. Each tab has independent scroll, filter, and severity settings.
Export Snippets
Select a range of lines and export them as a .log file or copy to clipboard for sharing in incident reports.
Connecting a Log Source
Click + Add Source to open the source configuration dialog.
Source Types
| Type | Input | How It Works |
|---|---|---|
| File (tail) | Absolute file path (e.g. /var/log/nginx/access.log) | Server opens the file and tails new lines as they are written. Requires the file to be readable by the TotalApp server process. |
| Docker Container | Container name or ID | Uses docker logs --follow to stream stdout + stderr. Requires Docker daemon access (same as Containers screen). |
| Syslog (UDP) | Listening port (default 514) | Opens a UDP listener on the specified port. Configure your application or network device to send syslog to TotalApp's host IP and this port. |
| HTTP (SSE) | URL of a Server-Sent Events endpoint | Connects to an SSE stream and displays each event data field as a log line. Useful for structured log endpoints that push JSON events. |
Named Sources
Give each source a short name when configuring it (e.g. "Nginx Access", "API Server"). The name appears in the tab header and is used in exported filenames. Sources are saved across sessions — you do not need to re-enter them on the next visit.
Real-Time Tailing
Once connected, new log lines appear in the viewer as they arrive. The viewer shows up to 5,000 lines in memory (configurable in Settings). Lines beyond this limit scroll off the top.
Controls
- Pause / Resume — Freeze incoming lines to read at your own pace. New lines are buffered and displayed when you resume. The buffer holds up to 1,000 lines while paused.
- Clear — Removes all lines from the current viewer. Does not stop the stream — new lines continue to appear after clearing.
- Scroll to bottom — Jumps to the latest line. A "New lines" badge appears when auto-scroll is off and new lines have arrived.
- Font size — Adjust between small (10px), medium (12px), and large (14px) for readability in the log viewer.
Searching & Filtering
The search bar above the viewer applies a real-time filter to visible lines. Enter a plain text term or check Regex to use a regular expression pattern.
Search Modes
- Filter (default) — Lines that do not match are hidden. Only matching lines remain visible in the viewer.
- Highlight — All lines remain visible but matching text within lines is highlighted in yellow. Useful for tracking a specific value without losing context.
Multiple Terms
Enter multiple search terms separated by | (OR) to match any of the terms. Example: ERROR|WARN|CRITICAL highlights all lines that contain any of those words.
Case-Insensitive Search
Toggle Case Sensitive off (the default) so that error matches ERROR, Error, and error. Turn it on when you need exact case matching (e.g. searching for a specific log constant that differs from general words).
Severity Levels
The Log Streamer automatically detects common severity keywords in each log line and colour-codes the line background.
| Severity | Keywords Detected | Highlight Colour |
|---|---|---|
| ERROR / CRITICAL / FATAL | ERROR CRITICAL FATAL EXCEPTION PANIC | Red background, red text |
| WARNING | WARN WARNING DEPRECATED | Yellow background, amber text |
| INFO | INFO NOTICE | Blue tint (subtle) |
| DEBUG | DEBUG TRACE VERBOSE | Dimmed text |
Severity colouring can be disabled from the viewer toolbar if your logs use custom severity labels that conflict with the defaults.
Export
To export a log snippet:
- Click the first line of the range you want to export. It becomes highlighted in blue.
- Shift-click the last line to extend the selection.
- Click Export Selection in the toolbar.
- Choose Copy to Clipboard or Download .log File.
Alternatively, click Export All to export all currently-visible lines (after any active filter is applied).
FAQ
{} toggle in the toolbar). When enabled, lines that parse as valid JSON are pretty-printed with syntax highlighting. Non-JSON lines are displayed as plain text. This is particularly useful for structured application logs from Node.js (pino, winston) or Python (structlog).