Release Log Tools v0.1.0

This commit is contained in:
2026-09-01 14:43:03 +02:00
commit 84a9978aa8
57 changed files with 10013 additions and 0 deletions
+37
View File
@@ -0,0 +1,37 @@
# 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](https://git.add-ideas.de/lotobo/toolbox-portal). 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](docs/ARCHITECTURE.md) and [Privacy and security](docs/PRIVACY-SECURITY.md) for exact bounds and trust assumptions.
## Development
Requires Node.js 22 and npm 11.
```sh
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](THIRD_PARTY_NOTICES.md).