Ноль является значением, пропуск нет
Если корректно измеренная длина очереди равна нулю, это означает отсутствие элементов в этой очереди в момент измерения. Если новое измерение не поступило, о текущей длине очереди по одному пропуску судить нельзя. Подмена пропуска нулём создаёт ложное впечатление нормальной работы. Последнее сохранённое значение тоже имеет время. Запись о нулевой очереди час назад не описывает автоматически её состояние сейчас. Поэтому рядом с показателем важно понимать свежесть наблюдения и ожидаемую частоту обновления. Сама линия графика не объясняет, как система отображает пропуски или соединяет соседние точки.
Успешный опрос не проверяет всё приложение
В Prometheus служебная метрика up относится к результату опроса цели: единица показывает успешное получение, ноль означает неудачный опрос. Если цель представляет отдельный компонент, выдающий метрики, успешный ответ этого компонента ещё не доказывает исправность каждой пользовательской функции обслуживаемого приложения. В Zabbix отдельный элемент данных может получить состояние Not supported, когда его значение не удаётся получить или обработать должным образом. Это состояние сбора данных, а не численное значение измеряемого параметра. При анализе полезно разделять здоровье канала наблюдения и состояние самого объекта, который пытаются наблюдать.
Сигнал требует понятного объяснения
Представим панель, которая показывает ноль ошибок, но не сообщает, что последнее обновление было давно. Оператор может принять отсутствие новых сведений за отсутствие проблемы. Более содержательная проверка рассматривает вместе значение, время и статус получения, а затем уточняет причину несоответствия. Неудачный опрос может быть связан с сетью, настройками доступа, недоступностью цели или другой технической причиной. Один сигнал не выбирает причину за специалиста. Аналогично большое значение метрики нельзя назвать аварией без понимания её смысла и условий. Учебный разбор помогает формулировать следующий вопрос; изменения рабочей инфраструктуры требуют отдельного разрешённого процесса.
Попробуйте на практике
Прочитайте три вымышленные записи мониторинга на бумаге. Подключаться к серверам, устанавливать программы или менять настройки не требуется.
- Запишите А: в 10:00 опрос цели успешен, длина очереди ноль. Б: в 10:01 опрос неудачен, нового значения очереди нет. В: в 10:02 опрос успешен, длина очереди двенадцать.
- Для каждой записи отдельно отметьте статус получения данных и известное значение очереди. Не заполняйте неизвестное нулём.
- Предположите, что панель в 10:01 продолжает показывать старый ноль. Добавьте к нему правильное время и объясните ограничение такого отображения.
- Сформулируйте по одному допустимому выводу для Б и В. Укажите, чего недостаточно для определения причины сбоя или оценки опасности очереди.
Как проверить результат. Для Б известно только отсутствие нового успешного измерения; текущая очередь неизвестна. Для В известно значение двенадцать в 10:02, но без контекста нельзя объявить его аварийным. Старый ноль относится к 10:00 и не заменяет пропущенное наблюдение.
Частые вопросы
Если up равен единице, пользователь точно может работать?
Нет. Это показатель успешности опроса конкретной цели. Для оценки пользовательского сценария нужны соответствующие ему проверки и метрики, а не только доступность выдачи данных.
Можно ли всегда считать отсутствие данных неисправностью устройства?
Нет. Сначала нужно проверить сам путь получения наблюдения и условия сбора. Отсутствие данных является важным сигналом неопределённости, но не устанавливает единственную причину.
Самостоятельный разбор темы. Содержание конкретной обучающей программы здесь не представлено.