Кратко:
- Мониторинг и логирование важны для здоровья кластера и БД.
- Сервисы управляемых БД предоставляют инструменты для мониторинга и анализа логов.
- Пример: мониторинг работы кластера и БД MySQL с использованием инструментов в консоли управления.
- Инструменты включают: Queries per second, Average query time, Slow queries per second, Connections, Threads running, Disk usage, Is Primary, Is Alive, Replication lag.
- Мониторинг состояния хостов: CPU usage, Memory usage, Disk read/write bytes, Disk IOPS, Network bytes, Network packets.
- Сервис Yandex Monitoring отвечает за мониторинг ресурсов в Yandex Cloud.
- Изучение логов ошибок и медленных запросов помогает выявить проблемы в работе системы.
Логи и мониторинг кластера
Мониторинг
Вам наверняка знакомо неприятное ощущение, когда стабильно и быстро работающая система начинает тормозить, подвисать или, того хуже, падать. Чтобы с вашим кластером и БД не случалось таких проблем, заботьтесь об их здоровье и отслеживайте метрики их работы.
Сервисы управляемых БД предоставляют вам инструменты для мониторинга работы хостов и БД, а также анализа логов. Это позволяет вовремя распознавать и исправлять проблемы. Например, вы легко увидите, что кластеру не хватает вычислительных ресурсов или что запросы к БД выполняются слишком медленно.
Рассмотрим эти инструменты на примере управляемой БД MySQL. Войдите в консоль управления, перейдите на страницу кластера и выберите вкладку Мониторинг.
Мониторинг кластера
Вы увидите информационную панель (дашборд) с графиками.

Queries per second — общее количество запросов в секунду, для каждого хоста.
Average query time — среднее время исполнения запросов, для каждого хоста (в миллисекундах).
Slow queries per second — количество SQL-запросов в секунду, выполняющихся дольше, чем указано в параметре
long_query_time, для каждого хоста.Connections — количество подключений, для каждого хоста.
Threads running — количество запущенных потоков, для каждого хоста. При увеличении нагрузки на кластер это значение будет быстро расти.
Disk usage — занятое дисковое пространство (в байтах), для каждого хоста и для кластера в целом.
Is Primary — показывает, какой хост является мастером и как долго.
Is Alive — показывает доступность кластера в виде суммы состояний его хостов. Каждый хост в состоянии
Alive увеличивает общую доступность на 1. При выходе из строя одного из хостов общая доступность уменьшается на 1. Для повышения доступности кластера вы можете добавить в него хосты.Replication lag — отставание реплики от мастера (в секундах).
Мониторинг состояния хостов
В разделе Хосты консоли управления на вкладке Мониторинг можно отслеживать состояние хостов:

CPU usage — загрузка процессорных ядер. При повышении нагрузки значение
Idle уменьшается.Memory usage — использование оперативной памяти (RAM) в байтах. При высоких нагрузках значение параметра
Free уменьшается, а Used и других — растёт.Disk read/write bytes — средний объём данных, записанных в хранилище и прочитанных из него (в байтах).
Disk IOPS — среднее количество операций ввода-вывода в хранилище.
Network bytes — средний объём данных, отправленных в сеть и полученных из неё (в байтах).
Network packets — среднее количество пакетов, отправленных в сеть и полученных из неё.
Анализируйте графики на дашборде, чтобы оперативно определять просадку производительности хостов и следить за состоянием всего кластера.
За мониторинг ресурсов в Yandex Cloud отвечает сервис Yandex Monitoring. Вы подробно познакомитесь и научитесь работать с ним на курсе «DevOps и автоматизация».
В блоке MySQL overview отображаются расширенные сведения о состоянии БД на хосте.
Логирование
Если в работе с БД появляются ошибки или производительность системы падает, изучите логи ошибок или медленных запросов. Сервис фиксирует такие события по умолчанию. Чтобы просмотреть записи, зайдите на вкладку Логи и выберите тип логирования и хост (или хосты), работу которого вы хотите проанализировать.

Типы логирования:
- MYSQL_GENERAL — общий журнал запросов к БД;
- MYSQL_ERROR — журнал ошибок MySQL;
- MYSQL_SLOW_QUERY — журнал медленных запросов MySQL.
- MYSQL_AUDIT — информация о подключениях к БД.