В большом проекте данных столько, что анализировать их вручную — задача практически непосильная. К счастью, это и не нужно. Ведь есть Grafana — инструмент для сбора и визуализации информации.
Рассказываем, как пользоваться Grafana — какие у нее возможности, как подключить и настроить ее для сбора данных из разных систем.
Что такое Grafana и зачем она нужна
Grafana — это открытая платформа для сбора, мониторинга и визуализации данных. Она может анализировать информацию, создавать на ее основе графики и дашборды — так информация по проекту всегда будет под рукой. Ею пользуются, чтобы:
- иметь на виду все важные данные о проектах, процессах и метриках, а значит эффективнее анализировать и планировать;
- быстрее находить причины сбоев — Grafana собирает в том числе информацию о неполадках, состоянии системы и рабочем процессе;
- оценивать эффективность метрик — благодаря визуализации можно увидеть, какие показатели не несут полезных сведений, а значит, не нуждаются в отслеживании.
Главный плюс Grafana — она позволяет объединить данные из разных систем в одном окне. Специалистам не нужно постоянно переключаться между несколькими сервисами сбора информации. Все сведения приходят в единое окно Grafana — мониторинг становится быстрее и удобнее.
Сама по себе Grafana не сохраняет информацию — просто получает и выводит на дашборд. Поэтому с ней удобно работать: она не требует огромного количества ресурсов из-за необходимости хранить множество данных.
Какие источники можно подключить к Grafana
Платформа собирает информацию из тех источников, которые к ней подключили. Например, из систем постановки задач, с сайтов и различных сервисов мониторинга, из баз данных и других хранилищ. Можно выбрать и подключить источники, информация с которых важна компании — то есть настроить дашборд под свои бизнес-задачи. А ненужную информацию можно и не передавать.
Всего среди стандартных источников — более 150 сервисов. Например:
- Jira — система мониторинга задач, которой часто пользуются в IT;
- Snowflake — облачное хранилище данных;
- Google Sheets — сервис онлайн-таблиц от Google;
- Microsoft SQL Server, MySQL, PostgreSQL — системы управления базами данных;
- Google Analytics — сервис для сбора статистики, например о посещаемости сайта или приложения.
Это далеко не все. Полный список источников можно посмотреть в разделе Data Sources (источники данных) на официальном сайте Grafana. Обычно для подключения какого-то источника нужно скачать соответствующий плагин для платформы. Некоторые заходят дальше и используют Grafana в личных целях, например визуализируют свою продуктивность.
Есть и плагины, которые расширяют функции Grafana, например дополняют их возможностями других приложений или добавляют новые метрики.
Кроме того, у Grafana есть возможность создать и добавить в систему свой модуль — то есть кастомизировать функции под себя. Так можно подключить к платформе даже те источники, для которых нет плагинов. Это полезно, если в проекте пользуются какими-то редкими или даже самописными системами.
Какие возможности есть в системе Grafana
Мониторинг в Grafana — обширный и дает много информации. Систему любят за широкий набор возможностей: можно легко и быстро отслеживать сведения из сотен источников. Вот какие функции для этого есть Grafana.
Отслеживание в реальном времени. Grafana не просто собирает данные — делает это в реальном времени. Если информация изменилась, например на сайте резко упало количество пользователей, Grafana учтет это мгновенно.
Панели и дашборды. Это два главных инструмента Grafana. Панель — это один график или таблица, который отслеживает какой-то один источник. А дашборд — набор из нескольких панелей. На нем можно просматривать данные из нескольких или даже всех подключенных источников.
Дашборды и панели можно настраивать. Например, выбрать, в каком виде будет отображаться информация, какие панели будут находиться на одном дашборде — и в каком порядке. Можно создать несколько дашбордов под разные цели. Скажем, на одном — маркетинговые сведения, а на другом технические.
История изменений. Хотя Grafana не хранит сами данные, она может запоминать, как они менялись со временем. Это помогает анализировать показатели в динамике, составлять отчеты и отслеживать развитие.
Аннотации. Если какой-то показатель резко изменится до нетипичных значений — на графике появится специальная отметка. Она называется аннотацией. С помощью этой функции можно быстро обнаружить аномальные значения, ошибки и сбои. Например, если производительность сайта внезапно упала — возможно, на серверах какие-то технические неполадки.
Шаблоны. Созданный дашборд можно сохранить и использовать как шаблон — создавать новые на его основе. Это удобно, если какая-то структура дашборда оказалась популярной или очень полезной.
Настройки вывода. В Grafana есть функции для красивого вывода информации на разные типы экранов, например в систему из нескольких мониторов. Можно отключить показ интерфейса — тогда на экране будут видны только данные. Это удобно, например, для презентаций или при мониторинге данных.
Автоматизация. В Grafana есть возможность писать скрипты, которые автоматически выполняют какие-то действия. Благодаря этому можно автоматизировать простые функции: поиск ошибок и оповещения о них, преобразование информации и так далее. Это ускоряет работу с платформой.
Публичный API. С помощью API разработчики могут подключить Grafana к собственным приложениям. Например, создать мобильный клиент, который будет взаимодействовать с платформой. Или даже чат-бот, с помощью которого можно отдавать Grafana команды.
Встроенный язык запросов. Grafana поддерживает PromQL — язык запросов, который спроектирован специально для больших данных. Он умеет работать с информацией, которая обновляется в реальном времени. С его помощью можно быстро запросить данные по какому-то показателю или за нужный период.
Уровни доступа. Платформа позволяет давать пользователям разные права. Так им будут доступны только те дашборды, которые важны для их работы. Например, право на просмотр дашборда с отчетами об ошибках есть у разработчиков — но не у маркетологов.
Это только некоторые из ключевых функций — но их уже достаточно, чтобы построить мониторинг данных с помощью дашбордов Grafana.
Как установить и настроить Grafana
Платформой можно пользоваться двумя способами. У нее есть облачный интерфейс — для него ничего не нужно скачивать и устанавливать, только подключить нужные источники. Работать с Grafana в таком случае можно онлайн через браузер.
Кроме того, Grafana можно поднять на собственном сервере. Это сложнее, но дает больше возможностей. Например, систему можно как угодно настраивать как себя. А еще в некоторых компаниях строгие требования к безопасности: они не позволяют пользоваться облаками.
Вот как работать с Grafana обоими способами.
В облаке. В этом случае достаточно зайти на сайт облачной платформы, зарегистрироваться и выбрать тарифный план. Есть бесплатный тариф — он включает в себя не слишком много функций, но подойдет для тестовых дашбордов или пет-проектов.
Платформа сама предложит создать дашборд и подключиться к источникам информации. Готовые модули для источников отображаются в списке. Нужно нажать на необходимый источник, установить модуль и ввести информацию для подключения.
После того как пользователь подключит источники, Grafana сразу же начнет выводить информацию из них на дашборды.
На собственном сервере. Этот способ сложнее — понадобится иметь сервер, на котором можно разместить Grafana. Чаще всего используют арендованные облачные сервера, например под управлением системы Ubuntu. Вот как установить Grafana на такой сервер:
- Настроить конфигурацию сервера: выбрать операционную систему и ее версию, регион, размер диска, количество операционной памяти и другие параметры. Обычно такие возможности есть у хостеров, которые предлагают сервера в аренду. Для Grafana достаточно 1 Гб оперативной памяти и 10 Гб места на диске.
- Добавить репозиторий с файлами Grafana в список доверенных источников. Обычно для этого нужно установить ключ шифрования. Система сможет найти его по ссылке https://packages.grafana.com/gpg.key, но набор команд для сохранения ключа зависит от системы.
- Добавить репозиторий Grafana в систему или создать новый со своими параметрами. Так у сервера появится доступ к файлам для установки платформы.
- Установить Grafana с помощью специальной команды — например, в Ubuntu это sudo apt install grafana.
- Включить демона Grafana — так в Linux называют процесс, который работает в фоновом режиме постоянно. Также понадобится включить для Grafana автозагрузку.
- Проверить, что всё работает корректно — платформа установлена.
После этого нужно добавить Grafana в список доверенных источников для файервола. Обычно она подключается через порт 3000 — доступ к нему из сети нужно разрешить. Тогда пользоваться Grafana можно будет через браузер. Достаточно ввести в адресную строку адрес сервера и путь к порту 3000.
При входе в систему нужно ввести логин и пароль. Их значение по умолчанию — admin. Лучше всего сразу поменять их: так безопаснее. А если пароль потеряется, через командную строку сервера его можно будет сбросить.
После этого можно пользоваться Grafana — добавлять источники и настраивать дашборды, как и в случае с облачным клиентом.
Краткие выводы
- Grafana — это инструмент для сбора и мониторинга данных. Платформа собирает информацию из любых источников, которые к ней подключают, и выводит на экран в виде графиков и таблиц.
- Разные панели с данными можно объединить в дашборд и просматривать все нужные сведения на одном экране. Все это настраивается: можно выбрать, в каком виде и формате отображать информацию.
- Grafana умеет работать с данными в реальном времени, отслеживать аномальные значения, отправлять уведомления и настраивать отображение дашбордов для разных экранов. Для нее можно писать свои модули и расширения, а также связывать с собственными системами через API.
- Можно пользоваться облачной версией Grafana — для этого не надо ничего устанавливать. Достаточно зарегистрироваться и подключить источники. А можно установить Grafana на свой сервер. Это сложнее, зато дает больше возможностей для настройки.