Skip to main content

logcatx

License: Apache 2.0

Local web dashboard for offline embedded dual-core log analysis. Feed it one log file, get an interactive browser dashboard. Deterministic analysis only — no LLM, no external log-mining dependency, no database, single-process, in-memory session.

Install & run

pip install logcatx
logcatx path/to/logfile.log          # parses, serves, opens browser
logcatx file.log --port 9000         # explicit port
logcatx file.log --no-browser        # headless start

The line format is fixed for v1: [MM/DD HH:MM:SS] [tid] [LEVEL] [core] [module] message. Lines that do not match are kept and shown as unparsed — never dropped.

Views

  1. Overview — file info, level pie, top modules, top error templates.
  2. Templates — searchable/sortable mined-template table; click a row to drill into its raw lines.
  3. Timeline — bucketed stacked bars by level (or by top error templates), zoomable; drag-brush a range to jump to Raw Logs in that window; burst list marks templates whose count jumps beyond 5σ (leave-one-out).
  4. Raw Logs — filter by level/core/module/keyword/template/time range, paged; click any line to expand ±5 lines of context (unparsed neighbors included).

A demo log ships at src/logcatx/static/synth-demo.log (16k synthetic lines with an injected error storm).

Manual verification checklist

  • logcatx src/logcatx/static/synth-demo.log — Overview numbers match (16601 total, 600 ERROR).
  • Templates: search stat wrong finds the storm template (300 hits); row click filters Raw Logs to it.
  • Timeline: ERROR spike at 09:20 visible; brush it → Raw Logs scoped to that minute.
  • Raw Logs: scroll 16k lines stays smooth (200/page paging); click a line → context block opens.
  • Port fallback: start a second instance with the same --port; it binds port+1 automatically instead of failing.

Development

pip install -e '.[dev]'
pytest -q                                  # unit + e2e suite
ruff check src tests main.py               # lint
python tools/gen_large.py 1000000 /tmp/big.log   # perf fixture

Performance: 1,000,000 synthetic lines parse+mine in ~29s (single core).

License

Apache-2.0 — see LICENSE.

Metadata

Release files for logcatx 0.0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for logcatx 0.0.1
File Size Uploaded Provenance
logcatx-0.0.1.tar.gz 476.5 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for logcatx 0.0.1
File Interpreter ABI Platform
logcatx-0.0.1-py3-none-any.whl Python 3 none any Details

Total release size: 959.6 kB

Release files / logcatx-0.0.1.tar.gz

Download URL logcatx-0.0.1.tar.gz
Size 476.5 kB
Tags Source
SHA-256 checksum
How to use checksums
2eb35d86f3d6edab0023bc039018fe1ed0a52478cc10db92f05ef89f038d5213
BLAKE2b-256 checksum
How to use checksums
7872b0c3aa8de7bbf3d73c41d9127462f341afe2ad9edcc277c40b4759eff5a5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.10.12

Release files / logcatx-0.0.1-py3-none-any.whl

Download URL logcatx-0.0.1-py3-none-any.whl
Size 483.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
446a687619f9e46998675c0f065bce5a1e8603bf3c5c797ec5483b5437fb7660
BLAKE2b-256 checksum
How to use checksums
8e250d965061d09ef6697de820351cb7d503c63065e765fa51ddd11e11804f78
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.10.12

Security for logcatx 0.0.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.0.1 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page