Лёгкий мониторинг доступности и времени отклика сайта ЦБ РФ с графическим отчетом и webhook-уведомлениями.
- Клонируйте репозиторий
- Создайте и активируйте виртуальное окружение
python -m venv .venv
.venv\Scripts\activate.ps1- Установите зависимости
pip install -r requirements.txt- Создайте
.envиз.env.example
copy .env.example .env- Настройте параметры в
.env
Основные переменные:
MONITOR_URL— URL для проверкиCHECK_INTERVAL_MINUTES— интервал проверкиREPORT_INTERVAL_MINUTES— интервал генерации отчётаDB_PATH— путь к SQLite базе данныхREPORT_TEMPLATE_PATH— путь к HTML-шаблонуREPORT_OUTPUT_PATH— путь к выходному HTMLREPORT_HEADER— заголовок графикаWEBHOOK_URL— URL для webhook уведомленийWEBHOOK_TIMEOUT_SECONDS— таймаут при отправке webhookLOG_LEVEL— уровень логирования
python monitor.pyЕсли в .env задан WEBHOOK_URL, при ошибочном запросе или коде ответа, отличном от 200, будет отправлено JSON-уведомление.
Пример полезной нагрузки:
{
"event": "monitor_failure",
"url": "https://cbr.ru/s/newbik",
"status_code": 0,
"response_time_ms": 3.12,
"error_message": "...",
"timestamp": "2026-04-12T12:00:00"
}pytest