Архив рубрики: Monitoring

Мониторинг серверов, сетей и оборудования

Sentry: запуск self-hosted версии системы мониторинга ошибок на AWS EC2

18 мая 2019
 

 Для проекта мы пользовались Cloud-based версией Sentry, но в один прекрасный день исчерпали лимит на отправку сообщений, и бекенд-команда, по сути, осталась без мониторинга. Давно собирались запустить Sentry на своём сервере, появился повод. В посте описывается запуск Sentry с Docker Compose, настройка почты и пример перехвата ошибок в Python. Используем репозиторий Sentry. Запускаем AWS EC2,… Читать далее »

Prometheus» Alertmanager — отправка алертов в «/dev/null»

26 марта 2019
 

 В дополнение к посту Prometheus: роутинг алертов в Alertmanager. Имеется конфиг с роутами. Задача — вырезать все алерты от Дев-а, и слать в «/dev/null». Для этого — создаём пустой ресивер: … receivers: — name: ‘blackhole’ — name: ‘default’ slack_configs: — send_resolved: true title_link: ‘http://dev.monitor.example.world/prometheus/alerts’ title: ‘{{ if eq .Status «firing» }}:confused:{{ else }}:dancing_panda:{{ end }}… Читать далее »

Monit: алерты при SSH логинах на сервер

18 марта 2019
 

 Задача — отсылать уведомления на почту при SSH-логине на хост с недоверенных IP. Используем Monit. Устанавливаем: Настраиваем отправку почты — задаём localhost (у нас крутится локальный exim), формат письма и получателя алертов. Редактируем /etc/monit/monitrc: … set mailserver localhost set mail-format { from: Monit <monit@$HOST> subject: monit alert — $EVENT $SERVICE message: $EVENT Service $SERVICE Date:… Читать далее »

Prometheus: мониторинг для RTFM — Grafana, Loki и promtail

9 марта 2019
 

 После внедрения Loki на рабочем проекте — решил добавить его и себе. А заодно — добавить node_exporter и alertmanager, что бы получать уведомления, когда на разделах будет заканчиваться место. Обычно «Ссылки по теме» размещаю в конце поста, но тут стоит их добавить в начале. Для общего знакомства с Prometheus: Prometheus: мониторинг — введение, установка, запуск,… Читать далее »

Prometheus: blackbox-exporter probe_http_status_code == 0 и его debug

6 марта 2019
 

 Сегодня решил обновить Grafana до уже релизной версии 6.0, а заодно — все остальные образы в стеке. Апдейт прошёл успешно (Loki наконец-то начала выводить имена файлов логов и все остальные лейблы), но вот в Slack сразу упала пачка CRITICAL алертов от blackbox-exporter, который проверяет все наши API-ендпоинты. Собственно, тут — пример использования дебага blackbox-exporter. Всего… Читать далее »

Docker: RabbitMQ: exec(): Unable to fork, Prometheus node_exporter и Docker limits

15 февраля 2019
 

 RabbitMQ перестал принимать новые сообщения, и при выполнении запроса — возвращает ошибки вида: exec(): Unable to fork write(): send of 12 bytes failed with errno=104 Connection reset by peer fwrite(): send of 19 bytes failed with errno=32 Broken pipe Собственно, по сообщениям видно, что проблема с памятью — exec() не может выполнить fork() и выделить… Читать далее »

Grafana Labs: Loki – подключение S3 для данных и DynamoDB для индексов

13 февраля 2019
 

 И продолжаем баловаться с Loki. Первая часть — тут>>>, вторая — тут>>>. Очень пригодилась помощь разработчиков в Slack-комьюнити Grafana — там есть отдельный канал #loki. Задача сейчас — настроить Loki для использования AWS S3 корзины как persistent storage для данных самих логов, и AWS DynamoDB — для хранения индексов. При запуске Loki с конфигурацией по… Читать далее »

Grafana Labs: Loki – распределённая система, теги и фильтры

7 февраля 2019
 

 Предыдущий пост серии — Grafana Labs: Loki – сбор и просмотр логов. Задача на сейчас — попробовать собрать распределённую систему: Grafana будет работать на одном хосте Loki — на втором Promtail — на третьем Суть идеи такова: имеется рабочее окружение, скажем Dev, включает в себя 2 хоста имеется окружение мониторинга — хост с Grafana/Prometheus/etc На хостах Dev-окружения… Читать далее »

Grafana Labs: Loki — сбор и просмотр логов

6 февраля 2019
 

 В Grafana версии 6.0 была предоставлена новая плюшка — просмотрщик логов Loki, аналог известного всем стека ELK/EFK. Является встроенной возможностью самой Grafana, и заточен под работу с Prometehus и Kubernetes, с возможностью использования их метрик. Проект совсем новый, и главный его недостаток, который выявился за время попытки поднять хотя бы Proof of Concept, который и… Читать далее »

Prometheus: роутинг алертов в Alertmanager

30 октября 2018
 

 Есть три рабочих окружения — Dev, Stage, Production. Есть пачка алертов с разными уровнями важности — info, warning и critical, например: … — name: SSLexpiry.rules rules: — alert: SSLCertExpiring30days expr: probe_ssl_earliest_cert_expiry{job=»blackbox»} — time() < 86400 * 30 for: 10m labels: severity: info annotations: summary: «SSL certificate warning» description: «SSL certificate for the {{ $labels.instance }}… Читать далее »