Metadata-Version: 2.4
Name: seemylogs
Version: 0.2.0
Summary: Point it at a log folder and read the run's story in your browser.
Project-URL: Homepage, https://github.com/sakethragirolla/seemylogs
Project-URL: Issues, https://github.com/sakethragirolla/seemylogs/issues
Author: Saketh Ragirolla
License: MIT
License-File: LICENSE
Keywords: cli,log-viewer,logging,logs,observability,tail,web
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Console
Classifier: Environment :: Web Environment
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Topic :: System :: Logging
Classifier: Topic :: Utilities
Requires-Python: >=3.9
Requires-Dist: fastapi>=0.110
Requires-Dist: httpx>=0.27
Requires-Dist: uvicorn>=0.29
Description-Content-Type: text/markdown

# seemylogs

Point it at a log folder and read the run's story in your browser. Lists every
log in a folder; click one to get an **Overview** (health verdict, stage
timeline, error triage), a **Logs** table (search, level filter, live tail), and
**Insights** (level distribution, volume-over-time, top sources). Tolerant
parser handles common Python log formats and drifts.

## Install

```bash
pip install seemylogs
```

## Use

```bash
seemylogs ./logs        # serve folder, opens browser at http://127.0.0.1:8765
seemylogs ./logs --port 9000
seemylogs ./logs --no-browser
# 'logview' also works as an alias command
```

## Supported log formats

Parser tries, in order, then a generic fallback:

- Pipe:    `2026-07-02 14:26:52 | INFO | services.logger | message`
- Bracket: `2026-07-01 11:00:06,960 [INFO] Scraper: message`
- Dash:    `2026-07-01 11:00:06,960 - name - INFO - message`
- Fallback: any line starting with a timestamp (level scanned best-effort)

Lines without a leading timestamp fold into the previous entry (tracebacks,
wrapped messages).
