Changed INTERVAL '$1 hours' to INTERVAL '1 hour' * $1 in all queries.
The previous syntax didn't properly parameterize the hours value, causing
PostgreSQL to treat $1 as a literal string instead of substituting the
actual parameter value.
This fix ensures the time range filter works correctly for all metric queries.
Add a lightweight Next.js dashboard to visualize OpenProxy metrics in real-time. The dashboard provides comprehensive insights into LLM API usage, costs, and performance.
Features:
- Real-time metrics overview (requests, tokens, costs, response times)
- Model breakdown with usage statistics
- Hourly trends visualization with charts
- Recent requests table with detailed information
- Auto-refresh every 30 seconds
- Configurable time ranges (1h, 6h, 24h, 7d)
Technical details:
- Built with Next.js 14 and React 18
- Uses Recharts for data visualization
- Connects directly to PostgreSQL database
- Runs on port 3008 by default
- TypeScript for type safety
- Minimal dependencies for lightweight deployment
The dashboard complements the proxy server by providing a user-friendly interface for monitoring and analyzing LLM API usage patterns.