Skip to content
kitty/binDev
Your files never leave this device

Read big log files without the wait

Open a log of any size, even gigabytes. Filter by level, text, regular expression or time, see matches highlighted, and jump from one error to the next.

Drop a .log, .txt, .jsonl or .gz file here, or

Paste log text instead
No file open
Open a log file to see its lines here.

The file is read in pieces on your device. Nothing is uploaded, so private logs stay private.

Built for big files

The file is streamed rather than loaded in one go, so lines appear while it reads, and only the lines on screen are drawn. Gzipped logs (.gz) are unpacked as they stream. Files with a few million lines work well on a typical laptop; the limit is your device's memory.

Levels and times

Levels are read from common formats: ERROR, WARN, INFO and DEBUG words, [error] tags, level=warn fields, JSON logs with a level field, numeric levels from JSON loggers, Android logcat letters and Python tracebacks. Stack trace lines take the level of the line above. Timestamps are read from ISO 8601, Apache and Nginx access logs, syslog and JSON time fields.

Questions

How do I find every error quickly?

Turn on only the Error and Fatal levels, or keep everything visible and use Next error to step through them in context. Click any line to see it in full below the list.

Can I search with a regular expression?

Yes. Tick Regular expression and type a pattern such as user=\d+ or (timeout|refused). Hide matching lines turns the search around, which is handy for removing noise like health checks.

How does the time filter treat time zones?

Timestamps with a zone, like Z or +02:00, are exact. Timestamps without one are read in your local time zone, or in UTC if you tick that option, and the From and To boxes use the same choice.

Can I save what I filtered?

Download shown lines saves exactly the lines that match your filters as a .log file.

more in the bin

Keep going.

More in kittybin Dev

Explore the bin