Pull to refresh

Comments 18

А ведь это довольно легко сделать: потратив совсем немного свободного времени, создадим докер контейнер, который будет периодически делать запросы в БД, расчитывать на их основании некие метрики, сравнивать их с пороговыми значениями и в случае превышения этих порогов, оповещать заинтересованных лиц.

Самое сложное — это не запросы в БД делать и уведомления слать. Самое сложное — это понять, что же конкретно надо мониторить и с какими порогами.

Ну, что мониторить, обычно понятно. Сложность в подборе порогов.
Ну, что мониторить, обычно понятно

Это кому как, к сожалению.

Тогда, методом научного тыка: сперва будем мониторить всё, особоненно то, что раньше уже падало, начиная с низких порогов. Затем пороги можно повышать: в течении нескольких дней интуитивно можно прийти к какому-то не очень высокому уровню ненужных сообщений.

Мониторить все невозможно. Просто невозможно. Поэтому вопрос, как выбрать то, что важно мониторить.

Ну, статья то не про это, а как организовать мониторинг системы, используя указанные в статье инструменты. Выбору того, что важно мониторить, можно посвятить отдельную статью...

Проблема в том, что когда вам надо мониторить заодно и время ответа системы, как-то у указанных инструментов начинаются проблемы.

>Дальше можно, например, настроить передачу рассчитанных метрик в Zabbix
Дело в том, что Zabbix, насколько я помню, уже умеет отсылать в телеграмм. Ну и зачем тогда вот это затевалось? Проще уж начинать сразу с него. По крайней мере, лимиты и пределы, на которые нужно реагировать, все равно очень желательно иметь в UI, а не в коде. И код, который что-то меряет, не должен пределы проверять, вообще говоря.
<зануда>Метод is_day можно сделать однострочным, просто return выражения из if</зануда>
Можно конечно. Но статья-то для новичков, с максимально простым кодом.
Вот как раз новичков-то и не стоит учить плохому.

Если используется Docker, то можно отказаться от venv и прямо в docker файле определить entry point.

Кстати, да. По привычке создал venv, да так и оставил, при переносе в докер.
Поправил — для таких простых приложений venv совершенно не нужен.
def is_day()…
а потом удивляемся — почему некоторые заинтересованные лица восточнее нас пишут гневные письма чтобы отключили эти уведомления по ночам

Если просто нужно слать уведомления через бота, то достаточно простого curl с минимальным json. Как сформировать запрос хорошо описано в документации Telegram Bot API.

Only those users with full accounts are able to leave comments. Log in, please.