Challenge
A client running 20+ Telegram and automation bots across multiple projects had no centralized way to monitor health, restart failed instances, push configuration updates, or view error logs. Managing the fleet required SSH access to multiple servers, manual log reading, and no early warning when a bot went down.
Solution
A web-based admin panel built in Laravel and Vue.js: real-time bot status via WebSocket (online, degraded, offline), one-click restart and configuration update per bot, aggregated error log viewer with search and severity filtering, usage metrics (messages processed, error rate, last activity) per bot, and a management Telegram channel that receives critical alerts automatically.
Results
All 20+ bots are visible from a single dashboard. Incident response time dropped from 45 minutes — the time previously spent identifying the problem via SSH — to under 3 minutes: a dashboard alert fires, the admin reviews the log in the panel, and restarts or rolls back with one click. The first critical failure after deployment was caught at 03:00 and resolved before the business day began.