Tool

JSON Log Extractor

Extract valid JSON records from mixed logs, SSE streams and NDJSON without uploading data.

Extracted records

Extraction details will appear after a successful run.

No extracted JSON yet.

What the extractor recognizes

The tool first checks for one complete JSON document. It then checks for Server-Sent Events data: lines, newline-delimited JSON, and finally balanced objects or arrays embedded in mixed text. Valid records stay in their original order and duplicates are preserved.

JSON strings nested inside an extracted record are recursively unwrapped, so an encoded webhook body or queue payload becomes a normal object instead of remaining a wall of backslashes.

Example

2026-07-22T09:12:04Z INFO request={"id":"req-42","payload":"{\"active\":\"true\"}"}
2026-07-22T09:12:05Z INFO response={"id":"req-42","status":200}

The output is always one JSON array, even when only one record is found:

[
  {
    "id": "req-42",
    "payload": {
      "active": true
    }
  },
  {
    "id": "req-42",
    "status": 200
  }
]

Deliberate limits

Input is capped at 5 MB. The extractor does not repair single quotes, trailing commas, truncated objects, or other non-standard JSON. Malformed SSE payloads are skipped with line-numbered warnings; input with no valid records fails explicitly instead of inventing a result.

Privacy and next step

Extraction runs in this browser tab. The page does not place pasted data in a URL, cross-page storage, analytics, or an application backend. Remove secrets before pasting production material into any browser tool.

Continue with JSON Utils