Чек-лист хорошего дашборда¶
На старте карьеры я задавал себе вопрос после каждого готового дашборда: "Всё ли я сделал правильно?" Составил чек-лист:
✓ Обязательные проверки¶
- Title (Заголовок): Есть и понятен человеку со стороны.
- Description (Описание): Написан на русском (или англ.), поясняет предназначение дашборда, ссылка на runbook.
- Time range (Временной диапазон): Установлено разумное. Для production — Last 15 min или Last 1h. Не Last 30 days.
- Variables working: Все переменные загружаются без ошибок. Переключение переменных, multi-value, include all — всё работает.
- All panels display data: На каждой панели есть данные. Ни одна панель не показывает No Data без причины.
- No errors: В логах браузера нет ошибок и logging ошибка не ловится. Ctrl+Shift+I в браузере.
- Links working: Все links (Data link, Dashboard link) ведут куда надо.
- Refresh interval set: Установлен разумный интервал согласно главе об интервалах.
- No hardcoded values: Никаких
{job="api-prod"}— всегда{job="$job"}или система переменных. - All panels have units: не "1243546543" а "1.2 GB". Установите единицу. Short, Bytes, Percent, Duration — в зависимости от контекста.
- Overrides used properly: если вам нужен разный цвет для разных series — используйте overrides.
- Tags added: минимум 3 тега (команда, окружение, тип).
- Alert rules configured (где требуется): CRITICAL errors и SLO.
- Documentation present: описание дашборда (как написано в стандартизации).
- Tested with different time ranges: Откройте дашборд с Last 5 min, Last 1h, Last 7d. Проверьте, данные остаются читаемы на всех масштабах.
- Tested with different variable values: Переключите production → staging. Протестируйте, все ли панели адаптируются.
- Table/Stat panels: убедитесь, что они не показывают NaN/-Inf.
Руководство по полному освещению¶
Чек-лист применим ко всем дашбордам компании: SRE команды проверяют продукт команды, product team проверяют свой. Нет разницы. Каждый член команды настроен проверять себя по этому списку.
Если дашборд не отвечает какому-то пункту — это не reject, а добровольное улучшение. Хорошая инженерная культура поощряет итеративное усовершенствование, но не блокирует доставку. "Deploy and improve."
Периодическая аудит-проверка¶
Например, раз в квартал обходите все production-дашборды и проверяйте по чек-листу. Устаревшие — удаляйте. Без владельца — архивируйте. Без описания — помечайте как "на доработку". Чистота дашбордов — это гигиена, как чистить зубы по утрам.
Далее: Часть IX. Экосистема Grafana