← ClaudeAtlas

checking-system-logslisted

Use when finding bridge events, agent responses, timeouts, or errors in system logs. Triggered by requests to debug system behavior, investigate errors, or check what the agent did.
tomcounsell/ai · ★ 18 · AI & Automation · score 74
Install: claude install-skill tomcounsell/ai
# System Logs Two surfaces. Structured bridge events live in Redis (`BridgeEvent` Popoto model — the old `logs/bridge.events.jsonl` file is gone); plain-text service logs live under `~/src/ai/logs/`. Always narrow by project or keyword — raw tails of a busy bridge log bury the signal. ## Structured events (Redis) Query via the analyzer script (respects the no-raw-Redis rule): ```bash cd ~/src/ai && python scripts/analyze_logs.py recent 20 # recent events, correlated by request cd ~/src/ai && python scripts/analyze_logs.py timeouts # timeout events cd ~/src/ai && python scripts/analyze_logs.py stats # counts by type/project ``` For project-filtered queries, use the ORM directly (never raw Redis on Popoto-managed keys): ```bash cd ~/src/ai && python -c " from models.bridge_event import BridgeEvent events = [e for e in BridgeEvent.query.all() if e.project_key == 'Valor'] events.sort(key=lambda e: e.timestamp or 0, reverse=True) for e in events[:20]: print(e.event_type, e.chat_id, e.data) " ``` Fields: `event_type`, `chat_id`, `project_key`, `timestamp`, `data` (dict with `sender`, `chat`, `message_id`, ...). The bridge currently emits `message_received`; older types (`agent_request`, `agent_response`, `agent_timeout`, `reply_sent`) may appear in historical data. Events expire after ~7 days (`BridgeEvent.cleanup_old`). ## Text logs (`~/src/ai/logs/`) | File | What's in it | |------|--------------| | `bridge.log` / `bridge.error.log` | Telegram bridge — mes