A containerized tool to monitor the uptime and latency of your websites.
- Periodic HTTP health checks on your defined URLs.
- Latency threshold alerts.
- Real-time web dashboard for live status visualization.
- Telegram notifications.
- Configurable log retention.
- Persistent logs outside the container.
- Dockerized and production-ready.
- Docker
- Docker Compose
Create or edit uptime_monitor/config.yaml
:
interval_minutes: 5
latency_threshold_ms: 500
log_retention_days: 30
urls:
- https://example.com
- https://your-service.com
notifier:
telegram:
token: "YOUR_TELEGRAM_BOT_TOKEN"
chat_id: "YOUR_TELEGRAM_CHAT_ID"
status_api:
enabled: true
host: "0.0.0.0"
port: 8080
-
Build the Docker image:
docker-compose build
-
Run the monitor as a service:
docker-compose up -d
-
View live logs:
docker-compose logs -f
-
Access the Real-Time Web Dashboard:
Open your browser and visit:
http://localhost:8080
This dashboard shows the current status of all monitored URLs with color-coded indicators and auto-refresh every 5 seconds.
Logs are written to uptime_monitor/logs/uptime_monitor.log
They are mapped to your host machine and persist after container restarts.
After changing config.yaml
, restart the container to apply changes:
docker restart uptime-monitor
docker-compose down
MIT License