← Наблюдаемость
10 мин · средне · Урок 4 из 6

Grafana: дашборды и панели

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

Зачем визуализировать метрики

Prometheus из прошлого урока хранит метрики и умеет отвечать на запросы PromQL. Но смотреть на числа и сырые запросы неудобно: глаз не ловит тренд в колонке цифр. Grafana рисует метрики графиками. Она подключается к Prometheus как к источнику данных и показывает, что происходит, во времени.

Grafana — слой визуализации, она ничего не хранит сама. Данные лежат в Prometheus (и других источниках), а Grafana их запрашивает и рисует.

Дашборд и панели

Дашборд это страница с графиками по одной теме (сервис, кластер, очередь). Он состоит из панелей, каждая показывает одну метрику или сравнение.

Дашборд «API» RPS Задержка p95/p99 Ошибки 5xx Память

Каждая панель — PromQL-запрос, отрисованный во времени. Панель «ошибки 5xx» показывает rate(http_requests_total{status="500"}[5m]) из урока про Prometheus, только графиком, а не числом.

Хороший дашборд отвечает на вопрос

Соблазн вывести на дашборд все метрики, которые есть. Это делает его бесполезным: в сотне графиков не найти нужный в момент аварии. Хороший дашборд собран вокруг вопроса, на который должен ответить.

Частый набор для сервиса — золотые сигналы: трафик (RPS), ошибки (доля 5xx), задержка (p95/p99), насыщение (CPU, память). Четырёх панелей обычно хватает, чтобы за секунды понять, здоров ли сервис. Детали смотрят на отдельных дашбордах, когда уже понятно, куда копать.

Переменные и шаблоны

Чтобы не плодить одинаковые дашборды на каждый сервис, в Grafana есть переменные. Дашборд делают с переменной service, а в запросах подставляют её ({service="$service"}). Сверху появляется выпадающий список, и один дашборд показывает любой сервис. Это та же идея переиспользования, что переменные в Terraform.

Что важно запомнить

Grafana — слой визуализации поверх Prometheus и других источников: она запрашивает метрики и рисует графики, ничего не храня сама.

Дашборд собирают из панелей, каждая — PromQL-запрос во времени. Хороший дашборд отвечает на конкретный вопрос, а не показывает всё; для сервиса обычно хватает золотых сигналов (трафик, ошибки, задержка, насыщение). Переменные дашборда переиспользуют его для многих сервисов.

В следующем уроке разберём алерты: как реагировать на проблемы автоматически.

Прошли материал до конца? Отметьте урок пройденным.