Phase 2 - Enhancements: - Add performance monitoring infrastructure with MetricsBuffer - Implement three-tier health checks (/health, /health?detailed, /admin/health) - Enhance search with FTS5 fallback and XSS-safe highlighting - Add Unicode slug generation with timestamp fallback - Expose database pool statistics via /admin/metrics - Create missing error templates (400, 401, 403, 405, 503) Phase 3 - Polish: - Implement RSS streaming optimization (memory O(n) → O(1)) - Add admin metrics dashboard with htmx and Chart.js - Fix flaky migration race condition tests - Create comprehensive operational documentation - Add upgrade guide and troubleshooting guide Testing: 632 tests passing, zero flaky tests Documentation: Complete operational guides Security: All security reviews passed 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
20 lines
711 B
Python
20 lines
711 B
Python
"""
|
|
Performance monitoring for StarPunk
|
|
|
|
This package provides performance monitoring capabilities including:
|
|
- Metrics collection with circular buffers
|
|
- Operation timing (database, HTTP, rendering)
|
|
- Per-process metrics with aggregation
|
|
- Configurable sampling rates
|
|
|
|
Per ADR-053 and developer Q&A Q6, Q12:
|
|
- Each process maintains its own circular buffer
|
|
- Buffers store recent metrics (default 1000 entries)
|
|
- Metrics include process ID for multi-process deployment
|
|
- Sampling rates are configurable per operation type
|
|
"""
|
|
|
|
from starpunk.monitoring.metrics import MetricsBuffer, record_metric, get_metrics, get_metrics_stats
|
|
|
|
__all__ = ["MetricsBuffer", "record_metric", "get_metrics", "get_metrics_stats"]
|