Log doctor
Diagnose a production log without reading it: errors are fingerprinted and counted locally across the whole file, then the top error groups get a root-cause hypothesis and a fix path.
About this tool
Production logs fail the people reading them: the same error repeats ten thousand times with different request ids, and the three errors that matter drown. This tool fingerprints every entry locally — timestamps, ids, addresses and numbers normalized away — and counts the groups across the entire file, so the frequency table is arithmetic, not an impression from a pasted sample.
Only a short sample of each top group is sent to the model behind your own key, which returns a root-cause hypothesis, up to five concrete debugging steps and a fix, each tied to a quote from the sample. Your full log never leaves the browser. The diagnosis table and detail report export as Markdown or JSON, ready to paste into an incident thread.
How to use Log doctor
- Add your provider API key in the key panel.
- Upload a .log/.txt file (up to 20 MB) or paste a log excerpt.
- Grouping runs locally: stack traces are fingerprinted (ids, timestamps and addresses normalized away) and counted across the full file.
- Read the diagnosis table for the top groups and export it as Markdown or JSON.
Keep the original files and inspect the exported result before publishing or sharing it.
Frequently asked questions
Are the counts real?
Yes — grouping and counting happen on your device over the entire file, not on a sample. Only the representative sample of each top group is sent to the model for diagnosis.
What is a fingerprint?
The error line with volatile parts (timestamps, request ids, hex addresses, numbers) normalized, so the same error with different ids groups together.
How much is sent to the model?
Up to 6 sample lines per group, for the top groups only (at most 8 model calls). Your full log never leaves the browser.
Which log formats work?
Any text log where entries start with a timestamp, a level (ERROR/WARN/…) or a stack trace — the common server and app formats.
Related tools
- AI chat — Chat with OpenAI, Claude or Gemini using your own API key. Your key stays in your browser; requests go straight to the provider.
- AI summarizer — Summarize long text with your own OpenAI, Claude or Gemini API key. Brief, detailed or bullet-point summaries, all in your browser.
- AI translator — Translate text between 30 languages with your own OpenAI, Claude or Gemini API key. Private by design: key and text stay with you and the provider.
- AI writing assistant — Improve, expand, shorten or re-tone your writing with your own API key. Six editing modes, direct browser-to-provider calls.
- AI code explainer — Paste code and get a plain-English explanation using your own OpenAI, Claude or Gemini API key. Language auto-detect included.
- AI PDF chat — Upload a PDF and ask questions about it. The PDF is parsed in your browser; only the extracted text and your question go to your chosen AI provider.
- AI image analyzer — Upload an image and let AI describe it, extract text (OCR), or identify objects. Uses vision models from OpenAI, Claude or Gemini with your own key.
- AI voice generator — Turn text into natural-sounding speech with OpenAI TTS. Six voices, speed control, play in the browser and download MP3.
- AI data analyst — Upload a CSV and ask questions in plain English. The file is parsed locally; the AI sees only a schema summary and sample rows.
- AI spend analyzer — Turn your AI provider usage export into an independent cost receipt: per-model and per-day breakdowns, spike alerts and a monthly projection. Runs 100% in your browser — your billing data is never uploaded.