← ClaudeAtlas

storage-debug-instrumentationlisted

Add comprehensive debugging and observability tooling for backend storage layers (PostgreSQL, ChromaDB) and startup metrics. Includes storage drift detection, raw data inspection endpoints, and a Next.js admin dashboard.
aiskillstore/marketplace · ★ 329 · AI & Automation · score 79
Install: claude install-skill aiskillstore/marketplace
# Storage Debug Instrumentation ## Purpose Enable rapid diagnosis of storage state, synchronization health, and backend performance bottlenecks by exposing: - Raw article inspection from both PostgreSQL and ChromaDB - Storage drift detection (missing/dangling entries) - Detailed startup timeline breakdown (DB init, cache preload, vector store, RSS refresh) - One-page debug dashboard consolidating all diagnostics ## Scope - Backend: `app/services/startup_metrics.py`, `app/main.py`, `app/vector_store.py`, `app/database.py`, `app/api/routes/debug.py` - Frontend: `frontend/lib/api.ts`, `frontend/app/debug/page.tsx` - No schema changes; purely additive instrumentation and debug routes ## Workflow ### 1. Create startup metrics service **File:** `backend/app/services/startup_metrics.py` - Implement thread-safe `StartupMetrics` class to record phase timings - Expose `record_event(name, started_at, detail, metadata)` for phase capture - Support `add_note(key, value)` for arbitrary annotations - Export singleton `startup_metrics` for app-wide use ### 2. Instrument vector store initialization **File:** `backend/app/vector_store.py` - Import `startup_metrics` - In `VectorStore.__init__()`, wrap initialization with `time.time()` timer - Record event with metadata: `host`, `port`, `collection`, `documents` - Catch connection errors and annotate them ### 3. Instrument FastAPI startup sequence **File:** `backend/app/main.py` - Call `startup_metrics.mark_app_started()` at beginning of `