Files
log-tools/README.md
T
2026-09-01 14:43:03 +02:00

2.3 KiB

Log Tools

Stream, inspect, correlate, redact, and export logs locally in the browser.

Log Tools is a standalone local-first application in the add·ideas Toolbox. Local files are consumed through File.stream() and a streaming TextDecoder; the application never turns a complete file into one string and never uploads it.

Version 0.1 scope

  • Incremental UTF-8 file scanning with byte/line progress, cancellation, a five-million-line stop, and an eight-GiB input gate
  • Bounded pasted/sample fallback and automatic or explicit plain, JSON Lines, nginx common/combined, syslog, and logfmt parsing
  • Normalized level, timestamp, source, message, and common structured fields with malformed-line diagnostics
  • Whole-scan bounded level/source/hour aggregation plus a 10,000-record retained preview for literal search and field filters
  • Deterministic email, IP, UUID, credential/query-secret, long-number, and exact-literal redaction recipes with generic or salted correlation tokens
  • Filtered CSV, normalized NDJSON, or original-line text export from the retained preview, with row/text caps and spreadsheet-safe CSV cells
  • Inert ANSI/HTML handling, responsive Toolbox shell themes, nested-path offline PWA support, and deterministic release archives

The preview retains up to the first 10,000 nonblank parsed or malformed lines and stops earlier at a 32 MiB retained-character budget; counts and timeline buckets continue across the scanned portion. Search, redaction preview, and export therefore cannot include later records dropped from the preview. Auto-detection is heuristic. The syslog parser covers RFC 5424 and a common RFC 3164 shape, nginx assumes the standard common/combined field order, JSONL flattening is capped, and multiline stack traces remain separate plain records.

See Architecture and Privacy and security for exact bounds and trust assumptions.

Development

Requires Node.js 22 and npm 11.

npm ci
npm run check
npm run test:browser

Release

npm run release:artifact creates deterministic release/log-tools-0.1.0.zip and checksum files.

Licence

GPL-3.0-or-later. Runtime dependencies retain their own licences; see THIRD_PARTY_NOTICES.md.