Перейти к содержанию

GrafanaSmith — дашборды, сгенерированные AI


Представьте: вам нужно сделать дашборд для PostgreSQL-кластера. Потом для Redis. Потом для Kafka. И ещё для десяти сервисов. Каждый раз — открывать Grafana, тащить панели, вспоминать метрики, настраивать PromQL, пороги, переменные.

GrafanaSmith делает это за вас. Это не библиотека и не тулза командной строки. Это Skill — файл SKILL.md, который загружается в AI-агента (opencode, Claude Code, Cursor, любой другой с поддержкой skills) и превращает описание сервиса в готовый JSON дашборда.

Как это работает

Вы даёте агенту три вещи:

  1. scrape_configs — Prometheus-конфиг сервиса (job_name, метрики, лейблы).
  2. service_description — что за сервис и как развёрнут (single, кластер, primary-replica).
  3. контекст — окружение, SLO, ожидаемая нагрузка.

Агент с загруженным скиллом парсит конфиг, определяет тип сервиса (по метрикам — pg_* значит PostgreSQL, redis_* значит Redis), подгружает шаблон из templates/ и генерирует:

  • полный JSON дашборда с панелями, переменными, порогами.
  • все PromQL-запросы уже написаны под конкретный тип сервиса.
  • переменные: $datasource, $job, $instance, плюс специфичные (для PostgreSQL — $datname, для Kafka — $topic).
  • опционально: SLO-панели и алерт-правила.

Встроенные шаблоны сервисов

GrafanaSmith поставляется с девятью шаблонами:

  • PostgreSQL
  • MySQL / MariaDB
  • Redis
  • Kafka
  • NGINX
  • PowerDNS
  • Node Exporter (универсальный хост)
  • Kubernetes Pods (kube-state-metrics + cAdvisor)
  • Универсальный fallback (Golden Signals — QPS, latency, errors, saturation)

Каждый шаблон — это файл .md в папке templates/. Добавить новый сервис означает создать ещё один такой же.

Почему это полезно SRE

Три вещи.

Первая — скорость. Вместо часов ручного конструирования дашборда вы получаете готовый JSON за минуты. Это особенно ценно, когда сервисов десятки и на каждый тратить день — непозволительная роскошь.

Вторая — качество. Шаблон уже содержит правильные метрики, правильные пороги, правильную структуру панелей. Вы не забудете RED-метрики для веб-сервиса. Не пропустите replication lag для PostgreSQL. Не поставите бессмысленный порог на CPU.

Третья — воспроизводимость. Дашборд генерится из шаблона, а не копипастится из старого JSON. Если шаблон улучшился — перегенерили и получили обновлённую версию.



Далее: SRE-инструменты