Home › Developer Tools › Log File Viewer

Log File Viewer

Open application, server and JSON log files of hundreds of megabytes in your browser. Lines are colored by level, stack traces stay attached to their error, and you can filter by level, text, regex or a time range, jump between errors and follow a growing file like tail -f.

Last updated:

Open a log file Drop a .log, .txt, .json or .jsonl file here (hundreds of MB are fine), paste log text, or follow a file that is still being written. Nothing is uploaded.
Advertisement
Advertisement

How to use the Log File Viewer

  1. Open a log: drop a .log, .txt or .jsonl file on the drop zone, press Open log file, or paste lines with Paste text. Three sample logs are built in.
  2. Filter by level: click the level chips to hide or show ERROR, WARN, INFO and the rest, or press Errors only.
  3. Search: type text in the filter box; turn on .* for regular expressions, Aa to match case, or Not to hide matching lines.
  4. Narrow the time: drag across the timeline chart, or type a start and end time.
  5. Inspect entries: click a line to see the whole entry, its stack trace or pretty-printed JSON; use Next error (or the E key) to jump between failures.
  6. Follow live: press Start tail -f and pick a file to see new lines as your app writes them.

Log formats the viewer recognizes

FormatExample lineLevel and time taken from
Log4j / Logback / SLF4J2026-03-12 14:32:05.123 ERROR [main] c.e.App - FailedLevel word after the timestamp; ISO date and milliseconds
Python logging2026-03-12 14:32:05,123 - app - WARNING - Disk 91% fullLevel name; comma before milliseconds
JSON lines (pino, bunyan, Serilog, ECS){"level":50,"time":1773324725123,"msg":"query failed"}level, severity, @l or log.level; time, timestamp, @timestamp
nginx / Apache access log203.0.113.4 - - [12/Mar/2026:14:32:05 +0000] "GET / HTTP/1.1" 502 157Status code (5xx error, 4xx warning); bracketed date with offset
Apache error log[Thu Mar 12 14:32:05.1 2026] [core:error] [pid 812] AH00037Bracketed [module:level]
Syslog / journald exportMar 12 14:32:05 web1 sshd[812]: error: maximum auth attemptsLevel word in the message; month and day (current year assumed)
Android logcat (threadtime)03-12 14:32:05.123 1234 5678 E ActivityManager: ANRSingle letter V, D, I, W, E or F

Regex filters that save time

Turn on .* and try these patterns (they are JavaScript regular expressions):

  • Exception|Error: finds every exception, including ones logged at INFO level.
  • " 5\d\d shows only server errors in an access log; " (4\d\d) shows client errors.
  • took (\d{4,}) ms finds operations that took 1,000 ms or more.
  • req(uest)?Id[=:"]+abc123 follows a single request through a JSON or text log.
  • health|heartbeat|keepalive with Not turned on hides routine noise.

Keyboard shortcuts when the log list is focused: arrow keys move the selection, Enter opens the entry, Esc closes it, E jumps to the next error and Shift+E to the previous one.

Frequently asked questions

How large a log file can I open?

Files are read in 8 MB chunks and only the visible lines are drawn, so logs of several hundred megabytes and millions of lines open fine on a typical laptop. The practical limit is your browser's memory, roughly 1 to 1.5 GB of text. For bigger files, cut out the time window you need first, for example with tail -n or split.

Is my log uploaded to a server?

No. The file is read by JavaScript on your device and never leaves it, which matters because logs often contain IP addresses, user IDs, tokens or customer data. You can even disconnect from the internet after the page has loaded.

How does it detect log levels?

It looks for standard level words near the start of each entry (ERROR, WARN, INFO, DEBUG, TRACE, FATAL, CRITICAL, SEVERE and similar), key-value pairs such as level=error, bracketed forms like [warn], Android logcat and glog single-letter levels, and level fields in JSON logs, including pino and bunyan numbers (10 trace, 20 debug, 30 info, 40 warn, 50 error, 60 fatal). In access logs the HTTP status decides: 5xx is an error and 4xx a warning.

How does tail -f work in the browser?

In Chrome, Edge and Opera the File System Access API lets a page keep a handle to a file you pick. The viewer checks the file once a second and appends any new bytes, like tail -f on Linux. If the file shrinks (log rotation or truncation) it reloads it. Firefox and Safari do not support this API yet, so there you reopen the file to refresh.

Why are some lines grouped with the line above?

When most lines in a file start with a timestamp, any line without one (a stack frame, a 'Caused by:' line or a wrapped message) belongs to the previous entry. Grouping keeps a stack trace together with its error, so filtering for ERROR also shows the trace and a text search on the exception name shows the whole entry.

Which time zone are the timestamps in?

Timestamps with an explicit offset or Z (UTC) are converted to your local time. Timestamps without a zone, which most text logs use, are treated as already being in your local time. Syslog lines have no year, so the current year is assumed.

Are all the tools on FreeToolCabin tested for quality and accuracy?

Yes! Every tool on our site undergoes automated Q/A testing in real browser environments to ensure high precision, correct output, and zero errors. If you happen to spot a bug or have a suggestion, please contact us at [email protected] and our team will review it right away.

Related tools

HAR File ViewerOpen a .har file to see a waterfall timeline, headers, bodies, timings and size totals.Regex TesterTest and debug regular expressions live.JSON FormatterBeautify, minify and validate JSON, with a collapsible tree view.Unix Timestamp ConverterConvert epoch timestamps to dates and back.Extract Text Between DelimitersPull out every piece of text between brackets, quotes, HTML tags or your own start and end markers.Filter Lines Containing TextKeep or remove lines that contain words or match a pattern, with match counts and regex.Line CounterCount total, non-empty, blank and unique lines in text or a .txt file, with line length stats.Online Python CompilerRun Python 3 in your browser with input(), numpy, pandas, charts and share links.JSON EditorEdit JSON in a tree and as code side by side: add, rename, drag, change types, undo and download.Unzip FilesOpen and extract ZIP files online.RAR & 7z ExtractorOpen RAR, 7z and other archives online and extract files.File Info ViewerCheck file size, type, date and MD5/SHA hashes.SQLite ViewerOpen .db and .sqlite files in your browser, browse tables and run SQL queries.DOCX ViewerOpen and read Word .docx files in your browser, then print or save them as HTML.EPUB ReaderOpen and read EPUB e-books in your browser with pages, a table of contents and font controls.What Is My BrowserSee your browser, version, OS, engine, screen and which web features it supports.Font ViewerPreview TTF, OTF, WOFF and WOFF2 fonts with sample text, waterfall, glyphs and metadata.Markdown EditorWrite Markdown with a toolbar, live split preview, autosave and .md or HTML export.Regex Cheat Sheet75+ ready-to-use regex patterns for emails, URLs, IPs and dates, each with a live test box.JavaScript Keycode FinderPress any key to see its JavaScript key, code, keyCode, which, location and modifiers.QR Code ScannerScan QR codes with your camera or from an image and safely read the link or text.RAID CalculatorUsable capacity, efficiency and fault tolerance for RAID 0, 1, 5, 6, 10, 50 and 60 arrays.JSONPath TesterTest JSONPath expressions live: filters, slices, wildcards and recursive search, with matches highlighted.Mermaid Diagram EditorWrite Mermaid code and see flowcharts, sequence, Gantt and ER diagrams live. Export SVG or PNG.Country Codes ListSearch ISO 3166 alpha-2, alpha-3 and numeric country codes with calling codes and TLDs.CSS Selector TesterTest CSS selectors on your HTML: highlighted matches, match count and specificity.Git Cheat SheetSearchable Git command reference by task, with copy buttons and an undo/rename/fix wizard.jq PlaygroundRun jq filters on JSON in your browser with live output, flags and an example library.Markdown Cheat SheetInteractive Markdown syntax reference: edit every example and see the live rendered preview.Regex ExplainerPaste a regular expression and get a plain-English breakdown, railroad diagram and flag notes.XPath TesterTest XPath expressions on XML or HTML: highlighted matches, node paths, values and examples.EML File ViewerOpen .eml email files to read the message, headers and raw source and save attachments.Graphviz Online ViewerWrite Graphviz DOT code and render graphs live; switch layout engines, export SVG or PNG.JavaScript Online CompilerWrite and run JavaScript in your browser with a console, timing, error lines and share links.Jupyter Notebook ViewerOpen .ipynb files and read code, Markdown, math, tables, plots and errors without Python.LaTeX Table GeneratorEdit a table like a spreadsheet or paste from Excel and get LaTeX tabular or booktabs code.Logic Gate SimulatorBuild logic circuits with AND, OR, NOT, XOR gates and flip-flops; see live outputs and truth tables.MSG File ViewerOpen Outlook .msg emails in your browser: sender, recipients, body, headers and attachments.XSLT TesterRun an XSLT 1.0 stylesheet on XML in your browser and see the output as HTML, XML or text.ASCII Diagram EditorDraw boxes, arrows and text on a character grid and copy plain-text diagrams for code and READMEs.DBF File ViewerOpen dBase .dbf files and shapefile tables, search and sort records, export CSV or XLSX.MBOX File ViewerOpen .mbox mail archives: list and search messages, read them, save attachments, export EML.MDB File ViewerOpen Access .mdb and .accdb databases in your browser: list tables, view rows, export CSV.Shapefile ViewerView zipped shapefiles on a map with the attribute table, then export to GeoJSON or CSV.Online Code EditorVS Code-style editor in your browser: tabs, 50+ languages, find/replace, autosave.Online Hex EditorOpen any file as hex and ASCII, edit bytes, search, inspect values and save the result.PHP Online CompilerRun PHP 8 code in your browser with output, HTML preview, error lines and share links.PlantUML EditorWrite PlantUML and see sequence, class, activity and more diagrams live. Export SVG or PNG.Sorting Algorithm VisualizerWatch bubble, insertion, merge, quick, heap and radix sort step by step with live counters.Lottie ViewerOpen Lottie JSON or .lottie files to play, pause, scrub frames, change speed and see details.Diff ViewerPaste a git diff or .patch file and view it side by side or inline, with file navigation.EditorConfig GeneratorBuild an .editorconfig with indent, charset, line endings and trim rules per file pattern.Folder Compare ToolCompare two folders by file list, size and SHA-256 hash, then open a text diff of changed files.Glob Pattern TesterTest glob patterns like **/*.js, {a,b} and !exclusions against a list of file paths.JMESPath TesterEvaluate JMESPath expressions against JSON live, the query language used by the AWS CLI.MongoDB Query TesterTest MongoDB find filters, projections and aggregation pipelines on sample JSON documents.Semantic Version CalculatorBump, compare, sort and test SemVer versions against npm ^, ~ and x ranges.
See all 53 Code Playgrounds & Testers →