--- title: Real-Time Logs description: Watch requests flow through your proxy in real-time --- # Real-Time Logs Watch requests flow through your proxy in real-time. Filter by domain, status code, or time range to troubleshoot issues quickly. All the visibility you need without diving into container logs. ## Overview Charon provides real-time log streaming via WebSocket, giving you instant visibility into all proxy traffic and security events. The logging system includes two main views: - **Access Logs**: All HTTP requests flowing through Caddy - **Security Logs**: Cerberus Dashboard showing CrowdSec decisions and WAF events Logs stream directly to your browser with minimal latency, eliminating the need to SSH into containers or parse log files manually. ## Why Use This - **Instant Troubleshooting**: See requests as they happen to diagnose issues in real-time - **Security Monitoring**: Watch for blocked threats and suspicious activity - **No CLI Required**: Everything accessible through the web interface - **Persistent Connection**: WebSocket keeps the stream open without polling ## Log Viewer Controls The log viewer provides intuitive controls for managing the log stream: | Control | Function | |---------|----------| | **Pause/Resume** | Temporarily stop the stream to examine specific entries | | **Clear** | Remove all displayed logs (doesn't affect server logs) | | **Auto-scroll** | Automatically scroll to newest entries (toggle on/off) | ## Filtering Options Filter logs to focus on what matters: - **Level**: Filter by severity (info, warning, error) - **Source**: Filter by service (caddy, crowdsec, cerberus) - **Text Search**: Free-text search across all log fields - **Time Range**: View logs from specific time periods ### Server-Side Query Parameters For advanced filtering, use query parameters when connecting: ```text /api/logs/stream?level=error&source=crowdsec&limit=1000 ``` ## WebSocket Connection The log viewer displays connection status in the header: - **Connected**: Green indicator, logs streaming - **Reconnecting**: Yellow indicator, automatic retry in progress - **Disconnected**: Red indicator, manual reconnect available ### Troubleshooting Connection Issues If the WebSocket disconnects frequently: 1. Check browser console for errors 2. Verify no proxy is blocking WebSocket upgrades 3. Ensure the Charon container has sufficient resources 4. Check for network timeouts on long-idle connections ## Related - [WebSocket Support](websocket.md) - [CrowdSec Integration](crowdsec.md) - [Back to Features](../features.md)