Уявіть: ваш інтернет-магазин падає, а дефолтна дашборда Grafana показує лише зелені графіки, замовчуючи, що Redis переповнений або N+1 запит у базі душить P95. Ми стикалися з цим десятки разів. Кастомна дашборда вирішує цю проблему, проєктуючи панелі під реальні сценарії інцидентів. Ми розробляємо дашборди, які відповідають на три ключові питання за секунди: сервіс живий, де вузьке місце, що робити. Досвід показує: кастомна дашборда в 5 разів швидша за дефолтну при пошуку інциденту — MTTR знижується з 40 до 15 хвилин. Наш досвід — понад 50 дашбордів для проєктів різної складності — від стартапів до enterprise. Наша команда має 5+ років досвіду в SRE та понад 50 реалізованих проєктів, 90% клієнтів залишаються з нами для подальшої підтримки.
Чому дефолтні дашборди не вирішують ваші завдання?
Community-дашборди страждають від двох проблем: інформаційний шум і відсутність контексту. Панелі CPU та пам'яті для кожного хоста — це не моніторинг сервісу, а метрики заліза. Ваш SRE не дивиться на CPU, поки немає інциденту. Йому потрібні: помилки 5xx, затримка відповіді та статус зовнішніх залежностей. Дефолтні дашборди цього не дають. Наприклад, один із наших клієнтів — сервіс доставки їжі — після впровадження кастомної дашборди скоротив середній час відновлення (MTTR) з 40 до 15 хвилин.
Як побудувати дашборду, яка відповідає на реальні питання?
Ми використовуємо піраміду метрик: зверху — доступність та помилки, нижче — продуктивність, ще нижче — ресурси. Кожна панель — actionable. Наприклад, метрика "CPU 67%" марна. Ми додаємо тренд, цільове порогове значення та сповіщення про масштабування. Так інженер не гадає, а приймає рішення. У результаті команда економить до 8 годин на тиждень на пошуку проблем. При зарплаті інженера $50/год це дає $1600 економії на місяць. Порівняно з дефолтними, кастомні дашборди скорочують MTTR у 5 разів.
Для побудови дашборди дотримуйтесь цих кроків:
- Проаналізуйте поточну інфраструктуру та визначте ключові метрики.
- Визначте SLI та SLO для кожного сервісу.
- Спроектуйте панелі за принципом RED (Rate, Errors, Duration).
- Реалізуйте дашборд за допомогою Dashboard as Code.
- Розгорніть через CI/CD та навчіть команду.
| Компонент | Дефолтна дашборда | Кастомна дашборда |
|---|---|---|
| Кількість панелей | 20+ (шум) | 5-7 (лише потрібне) |
| Відповідь на питання "Що робити?" | Ні | Так: тривога, тренд, поріг |
| Час пошуку проблеми | >10 хвилин | <2 хвилин |
Ми вбудовуємо змінні дашборди: $__timeRange, $__interval, а також змінні для оточення та інстансу. Це дозволяє дивитися на staging і production без клонування. Для прискорення роботи дашбордів ми використовуємо recording rules Prometheus, що дозволяє агрегувати дані заздалегідь. Також ми застосовуємо чотири золотих сигнали Google SRE: затримка, трафік, помилки та насиченість.
Які метрики включати в дашборду для швидкого пошуку проблем?
Важливо вибирати метрики, які відображають користувацький досвід та здоров'я сервісу. Ми рекомендуємо SLI/SLO-підхід: визначаємо індикатори рівня сервісу (error rate, latency, throughput) та цільові значення. У дашборду обов'язково входять:
- Error Rate (5xx) — відсоток помилок. Поріг: <1% для критичних сервісів.
- P95 Latency — затримка для 95% запитів. Поріг залежить від SLA.
- RPS — запити в секунду, потрібні для розуміння піків.
- Uptime — доступність, що перевіряється через синтетичний моніторинг.
- Метрики бази даних: активні з'єднання, затримка запитів, повільні запити.
- Метрики кешу: hit rate, використання пам'яті, витіснення (evictions).
Приклад структури дашборди для веб-застосунку
Row 1: Service Health (великі stat panels)
[Error Rate %] [P95 Latency ms] [Uptime %] [Active Users]
Row 2: Traffic & Performance
[RPS - час] [Response time P50/P95/P99 - час] [HTTP status breakdown]
Row 3: Infrastructure
[CPU % per host] [Memory % per host] [Disk I/O] [Network I/O]
Row 4: Database
[DB Connections active/max] [Query latency P95] [Slow queries count]
Row 5: Cache
[Redis hit rate %] [Redis memory usage] [Evictions per sec]
Показати приклади PromQL-запитів для ключових метрик
| Метрика | Запит |
|---|---|
| Error Rate | sum(rate(http_requests_total{status=~"5..", job="app"}[5m])) / sum(rate(http_requests_total{job="app"}[5m])) * 100 |
| P95 Latency | histogram_quantile(0.95, sum(rate(http_request_duration_seconds_bucket{job="app"}[5m])) by (le)) |
| Active DB Connections | pg_stat_activity_count{datname="mydb", state="active"} |
| Redis Hit Rate | rate(redis_keyspace_hits_total[5m]) / (rate(redis_keyspace_hits_total[5m]) + rate(redis_keyspace_misses_total[5m])) * 100 |
Dashboard as Code: дашборди в git
Зберігати дашборди в хаосі UI — шлях до втрат. Ми використовуємо Dashboard as Code через Grafonnet або Terraform Grafana provider. Приклад на Jsonnet:
local grafana = import 'grafonnet/grafana.libsonnet';
local dashboard = grafana.dashboard;
local graphPanel = grafana.graphPanel;
dashboard.new(
'Application Overview',
time_from='now-1h',
refresh='30s',
)
.addPanel(
graphPanel.new(
'Error Rate',
datasource='Prometheus',
)
.addTarget(
grafana.prometheus.target(
'sum(rate(http_requests_total{status=~"5.."}[5m])) / sum(rate(http_requests_total[5m])) * 100',
legendFormat='Error Rate %'
)
),
gridPos={ x: 0, y: 0, w: 12, h: 8 }
)
Такий підхід дозволяє керувати версіями, аудитом і відтворюваністю. Анотації деплоїв додаються через CI/CD — кожен реліз позначається на графіках. Кастомна дашборда скорочує час пошуку причин простою в 5 разів, економія часу команди — до 8 годин на тиждень. Це призводить до зниження часу простою на 70%.
Що входить у роботу?
- Аудит поточної інфраструктури та метрик
- Проєктування панелей за принципом "зверху вниз"
- Верстка дашбордів у Grafana зі змінними та анотаціями
- Написання Dashboard as Code (Jsonnet/Terraform)
- Git-репозиторій з усім кодом дашбордів
- Документація та навчання команди
- 30 днів безкоштовної підтримки після здачі
Орієнтовні строки та вартість
| Тип дашборди | Строки | Вартість |
|---|---|---|
| Базова (error rate, latency, traffic) | 1-2 дні | від $600 |
| Повна (всі шари застосунку) | 3-5 днів | від $1500 |
| Dashboard as Code + git workflow | 1-2 дні | від $800 |
| Анотації деплоїв | 1 день | від $300 |
Пропонуємо комплексне рішення під ключ за 3-5 днів.
Досвід і гарантії
Ми — команда SRE-інженерів з 5+ роками досвіду в моніторингу та Grafana. Розробили понад 50 дашбордів для проєктів різної складності — від стартапів до enterprise. Наші інженери сертифіковані з Grafana та мають досвід роботи з Prometheus, VictoriaMetrics, InfluxDB. Ми гарантуємо, що кожна дашборда відповідає на три питання: "Сервіс живий? Де проблема? Що робити?".
Замовте безкоштовну оцінку проекту — ми проаналізуємо вашу інфраструктуру та запропонуємо оптимальний набір дашбордів. Пишіть нам для попередньої оцінки. Вартість розробки — від $600 за базовий дашборд.







