Панель состояния и ежедневный контроль
Раздел веб-интерфейса: [Состояние системы → Обзор] Маршрут:
#dashboard/overview
Назначение
Панель состояния показывает текущее состояние системы: ход сбора писем, нагрузку на сервер, состояние поиска и фоновых задач, а также результат автоматической проверки работоспособности компонентов. Раздел предназначен для администратора.
Как открыть панель состояния
- В меню слева выберите [Состояние системы → Обзор]. Либо нажмите ссылку [Клавдий] в хлебных крошках вверху любой страницы.
- Панель состояния откроется в содержимом страницы.
{{СКРИНШОТ}}
Из чего состоит панель состояния
Панель состояния содержит ключевые показатели и несколько информационных блоков:
- Ключевые показатели — активные задачи, задачи в очереди, скорость SMTP-приёма, ошибки за последний час и скорость архивирования.
- Статус задач — таблица фоновых задач с признаком обновления в реальном времени. Отображаются задача, состояние, ход выполнения и ошибки.
- Объём писем — данные по почтовым ящикам: число писем и вложений, объём до и после дедупликации. Показаны только ящики локальных доменов.
- SMTP-серверы — состояние приёмников почты: IP или сеть, статус, порт, ошибки.
- Системные метрики — таблица компонентов со значениями за последний час. Обновляется примерно раз в минуту.
- Самопроверка — проверка работоспособности компонентов с общим статусом.
- График импорта — динамика поступления писем (писем в минуту) и ошибок.
{{СКРИНШОТ}}
Как проверить, что система в порядке
- Откройте панель состояния [Обзор].
- Посмотрите общий статус блока [Самопроверка]:
-
ok— проверка пройдена; -
warn— обнаружено предупреждение; -
fail— компонент неработоспособен или требует вмешательства.
-
- Если статус не
ok, найдите строку с проблемой в таблице [Системные метрики] или в списке компонентов самопроверки и действуйте по таблице ниже.
Системные метрики
Таблица содержит строки по компонентам и видам активности за последний час:
| Строка | Содержание |
|---|---|
| База данных (PostgreSQL) | подключений N (свободно X из Y, лимит Z); «недоступен» при сбое |
| SMTP-сервер (приём почты) | обработано, ошибок, в очереди, скорость (писем/мин); «неактивен» при сбое |
| Полнотекстовый поиск (Solr) | «доступен, версия N» либо «не настроен или недоступен». Для кластера SolrCloud — состояние кластера: число экземпляров, активных и проблемных реплик, размер индекса, число документов |
| Очередь оповещений | писем в очереди (ожидает отправки); предупреждение при значении более 100 |
| Архивация (за час) | писем, ошибок, вложений, объём |
| Массовый сбор (за час) | ящиков обработано, ошибок |
| Приём SMTP (за час) | получено, отклонено, получателей принято и отклонено |
| Доступ по IMAP (за час) | подключений, поиск (Solr и в памяти), выборка, успешных и неуспешных входов |
| Индексация писем | проиндексировано, ошибок, в очереди (предупреждение при значении более 1000) |
| Оповещения (за час) | отправлено, ошибок |
| Планировщик задач | выполняется, с ошибками, зависших |
| Безопасность (за час) | успешных и неуспешных входов, отказов в доступе |
| Подключения к БД (за час) | выдано соединений, неудачных |
| Ресурсы узла | загрузка CPU (%), средняя нагрузка (load average (!), 1/5/15 мин), память (использовано/лимит/кеш), подкачка (swap (!)), IOPS (чтение/запись), место на диске по точкам монтирования |
Метрики ресурсов собираются каждые 30 секунд для каждого узла.
- В Kubernetes и Docker данные считываются из cgroup v2 с учётом ограничений контейнера. Если cgroup v2 недоступен, используются метрики хоста из
/proc.- Текущие значения доступны на странице [Кластер → Узлы кластера]. Усреднённые значения за час и сутки сохраняются в исторических рядах.
- Точки монтирования для дисковых метрик задаются переменной
KLVD_DISK_MOUNTS; по умолчанию используются/и/var/klvd.Подробнее: {{ССЫЛКА:maintenance.cluster-status|Проверка состояния узлов}}.
Самопроверка
Блок [Самопроверка] проверяет ключевые компоненты:
| Компонент | Что проверяется |
|---|---|
| PostgreSQL | доступность базы |
| Полнотекстовый поиск (Solr) | доступность поиска |
| SMTP-сервер | включён ли приёмник |
| Планировщик | есть ли задачи с ошибками и зависшие задачи |
| Очередь оповещений | количество писем в очереди |
{{СКРИНШОТ}}
Как посмотреть объём писем по ящикам
- Откройте панель состояния [Обзор].
- Переключитесь на вкладку [Объём писем].
- Посмотрите колонки по каждому ящику:
- [Объём до дедуп.] — суммарный размер тел писем и вложений ящика;
- [Объём после дедуп.] — объём с учётом дедупликации вложений.
Показаны только ящики локальных доменов организации (см. {{ССЫЛКА:install.external-content|Установка → Общие настройки → Политики отображения и домены}}).
Как отреагировать на предупреждение
Если на панели состояния появились предупреждения, действуйте по алгоритму:
- Определите, о каком компоненте предупреждение (в блоке [Самопроверка] — статус, в [Системных метриках] — строка).
- Найдите компонент в таблице ниже.
- Выполните действие.
| Предупреждение | Что делать |
|---|---|
| Индексация: большое отставание | Поиск не успевает индексировать письма. Проверьте службу поиска — см. {{ССЫЛКА:maintenance.search-health |
| Планировщик: ошибки или зависшие задачи | Откройте {{ССЫЛКА:maintenance.tasks |
| [PostgreSQL: fail] (!) | Проверьте состояние базы — см. {{ССЫЛКА:maintenance.db-health |
| [Solr: fail] (!) | Проверьте службу поиска — см. {{ССЫЛКА:maintenance.search-health |
| Очередь оповещений растёт | Проверьте SMTP-сервер для оповещений — см. {{ССЫЛКА:install.notifications |
Примечания
- Метрики за последний час показываются с детализацией до минуты. Долгосрочная история (тренды за месяцы и годы) хранится в агрегированном виде. См. {{ССЫЛКА:maintenance.db-health|База данных}}, раздел [Хранение метрик].
См. также
- {{ССЫЛКА:maintenance.tasks|Задачи и очередь}}
- {{ССЫЛКА:maintenance.search-health|Поиск и администрирование Solr}}
- {{ССЫЛКА:maintenance.troubleshooting|Диагностика проблем}}
Что дальше
- {{ССЫЛКА:maintenance.tasks|Очередь задач}}
Подключение внешнего мониторинга
Для регулярного сбора показателей и оповещений используйте {{ССЫЛКА:install.integration-zabbix|Zabbix}} или {{ССЫЛКА:install.integration-prometheus|Prometheus и Grafana}}. Опрос каждого узла отдельно позволяет отличить отказ узла от недоступности общей точки входа.
Навигация по книге
- Следующая статья: {{ССЫЛКА:maintenance.tasks|Очередь задач}}