# Monitoring Scripts This directory contains various monitoring scripts and tools for the home lab infrastructure. ## Available Scripts ### Tdarr Monitoring #### tdarr_monitor.py A comprehensive Python-based monitoring tool for Tdarr media transcoding servers. Features dataclass-based return types for improved type safety and IDE support. **Features:** - Server status and health monitoring - Queue status and statistics tracking - Node connectivity and performance monitoring - Library scan progress monitoring - Worker activity tracking - Comprehensive health checks - JSON and pretty-print output formats - Configurable timeouts and logging **Usage:** ```bash # Basic health check ./tdarr_monitor.py --server http://10.10.0.43:8265 --check health # Monitor queue status ./tdarr_monitor.py --server http://10.10.0.43:8265 --check queue # Get all status information ./tdarr_monitor.py --server http://10.10.0.43:8265 --check all --output json # Monitor nodes with verbose logging ./tdarr_monitor.py --server http://10.10.0.43:8265 --check nodes --verbose ``` **Available Checks:** - `health` - Comprehensive health check (default) - `status` - Server status and configuration - `queue` - Transcoding queue statistics - `nodes` - Connected nodes status - `libraries` - Library scan progress - `stats` - Overall transcoding statistics - `all` - All checks combined **Output Formats:** - `pretty` - Human-readable format (default) - `json` - Structured JSON output **Exit Codes:** - `0` - Success, all systems healthy - `1` - Error or unhealthy status detected **Requirements:** - Python 3.7+ - `requests` library - Access to Tdarr server API endpoints #### tdarr-timeout-monitor.sh Shell script for monitoring Tdarr timeouts and system status. **Usage:** ```bash ./tdarr-timeout-monitor.sh ``` ### System Monitoring #### Windows Desktop Monitoring Complete Windows desktop monitoring system with Discord notifications for reboots and system events. Location: `windows-desktop/` - Full setup instructions in `windows-desktop/README.md` - PowerShell monitoring scripts - Windows Task Scheduler integration - Discord webhook notifications **Features:** - Automatic reboot detection - System startup/shutdown monitoring - Discord notifications with timestamps - Configurable monitoring intervals - Windows Task Scheduler integration ### Setup and Configuration #### Discord Integration See `setup-discord-monitoring.md` for Discord webhook setup instructions. ## Integration with Home Lab ### Tdarr Keywords Trigger When working with Tdarr-related tasks, the following documentation is automatically loaded: - `reference/docker/tdarr-troubleshooting.md` - `patterns/docker/distributed-transcoding.md` - `scripts/tdarr/README.md` ### Gaming-Aware Scheduling The monitoring scripts integrate with the gaming-aware Tdarr scheduling system that provides: - Configurable time windows for transcoding - Gaming session detection - Automated resource management - Smart scheduling to avoid performance conflicts ## Best Practices 1. **Regular Monitoring**: Set up cron jobs or scheduled tasks for regular status checks 2. **Health Checks**: Use the health check endpoints for automated monitoring 3. **Logging**: Enable verbose logging for troubleshooting 4. **Timeout Configuration**: Adjust timeouts based on network conditions 5. **Error Handling**: Monitor exit codes for automated alerting ## Related Documentation - `/patterns/docker/distributed-transcoding.md` - Tdarr architecture patterns - `/reference/docker/tdarr-troubleshooting.md` - Troubleshooting guide - `/scripts/tdarr/README.md` - Tdarr management scripts