Skip to content
Marvin's Toolbox.

Search tools

Type to filter all tools

Log Visualizer

Paste or drop application logs and read them as a clean, structured list. Detects logfmt, JSON lines and common plain-text formats, colors levels and timestamps, and lets you expand or collapse the fields of every entry.

Everything runs locally in your browser. Your data never leaves your device.

Input

Drop a log file here, paste, or click to browse

View

Entries

Nothing to visualize yet
Paste log output or drop a log file above to see it as structured entries.

About the Log Visualizer Tool

This tool turns raw log output into a readable, structured list. Paste log lines or drop a log file and every line becomes an entry with a colored level badge, a timestamp, the message and its remaining fields. The format of each line is detected automatically, so logs that mix logfmt, JSON lines, klog and syslog output still parse correctly, and a manual override forces one parser when detection guesses wrong.

The list is built for reading through a problem: hide the noise with per-level filters, search across all entries, expand a single entry or all of them to see the structured fields, and copy any entry's original line for a bug report. Timestamps show as written or as relative times like 5 minutes ago.

What you can do

  • Pretty print logfmt output with the message, level and fields separated.
  • View JSON logs line by line, including NDJSON and a JSON array of entries.
  • Read Kubernetes klog and glog output with the level letter decoded.
  • Parse syslog lines in both the classic BSD and the RFC 5424 shape.
  • Filter a log by level to see only errors and warnings.
  • Search all entries and see per-level counts at a glance.
  • Expand an entry to see its structured fields and the raw line.
  • Show timestamps as written or as relative times.

How to use the Log Visualizer

  1. 1Paste log output, or drop a log file onto the input.
  2. 2Leave the format on Auto, or force logfmt, JSON, klog, syslog or plain text.
  3. 3Hide levels you do not need and search for the entries you do.
  4. 4Expand entries to inspect their fields, and copy a raw line when you need it.

What the parser understands

Detection runs per line, so a file that mixes formats still works. JSON entries take their level, message and timestamp from the usual keys (level, msg, time, @timestamp and friends) and understand pino's numeric levels. Logfmt lines handle quoted values and escapes, and free text between pairs becomes the message. klog lines decode the leading I, W, E or F letter plus the source location and pid. Syslog lines work with or without a priority prefix, whose severity is used when present. Everything else falls back to plain text, where a leading ISO timestamp and a level keyword like ERROR: are still picked out.

Built for large logs

Parsing is capped at 50,000 lines and the list renders in batches of 500 with a count of what is hidden, so a big log stays scrollable instead of freezing the page. The level filter and search always run over every parsed entry, not just the visible batch.

Cleaning a log before sharing

A log you paste into a ticket often carries addresses, tokens or user data. Send the loaded log to the Log Redactor to strip sensitive values first. For digging into one large JSON entry, the JSON Inspector shows it as a collapsible tree.

Format code in JavaScript, TypeScript, JSON, JSON5, HTML, Vue, CSS, SCSS, LESS, Markdown, YAML, GraphQL, XML and SQL. Pick tabs or spaces, set the indent width, and format the input in place with one click.

Decode Base64 to text or encode text to Base64. Paste into the top box, read the result below, and flip the direction with one click. Handles Unicode correctly, reads URL-safe Base64, and shows binary payloads as a hex dump you can download.

Convert config and data between JSON, YAML, TOML, JSON5, INI, XML, CSV and .env. Type or paste on the left, pick the output format on the right, and copy the result. Includes a format button and a minify toggle.

Remove duplicate lines from a list or text, keeping the first occurrence. Optionally ignore case and whitespace, or drop blank lines too.

Generate realistic fake data for testing: names, emails, addresses, phone numbers, companies, internet data, dates and more. Tick the fields you need, set how many rows you want and a locale, then copy or download the result as JSON, CSV or plain text.

Replace text in two modes: plain find and replace all, or regular expressions with flag controls and capture group references like $1.