Xor

 
<<< Back

Прикручиваем Grafana к Мажордому

Обзор и первая попытка использования

Grafana (https://grafana.com/) — это платформа с открытым исходным кодом для визуализации, мониторинга и анализа данных.
Установка под разные платформы хорошо описана на сайте, поэтому не буду на ней останавливаться.
Здесь только первая попытка использования Графаны в МДМ без многих ее фич - алертов по выходу мониторящихся данных из заданных пределов (заявлена поддержка телеги и емэйла со скринами), мониторинга системы, mySQL и пр.

Хотелось увидеть исторические данные МДМ в новом интерфейсе и вот, что получилось.

После установки Графана у меня на семерке запустилась сервисом и стартует свой сервер на 3000 порту.
В браузере набираем <адрес_сервера:3000>, вводим admin/admin и мы в Графане.

Для подключения к МДМ используем источник данных mysql, заполняем поля для подключения и жмем сохранить и тест.
Источник готов.
pic1

Дальше создаем дашборд и в ней панель.
Чтобы панель начала работать, она должна получать данные из МДМ. Желательно исторические, но необязательно.
Построитель запросов, встроенный в пункт Qwery, мне не подошел и я использую в нем пункт Edit SQL.
pic2

Туда я вставляю готовый запрос. Кстати, запрос для исторических данных у меня один на все панели примера, от панели к панели там меняются только айдишники свойств - для Температуры одни, для Влажности - другие, и т.д.

Перечень айдишников я беру с помощью запроса в phpAdmin:

SELECT
distinct  phistory.`VALUE_ID`,pvalues.property_name as "metric"
FROM phistory
JOIN `pvalues` ON pvalues.id = phistory.`VALUE_ID`
where pvalues.property_name like '%Temperature'

А вот запрос для панели Графаны:

SELECT
  $__time(phistory.`ADDED`),
  pvalues.property_name as "metric",
  (phistory.VALUE+0.0) as value
FROM phistory
JOIN `pvalues` ON pvalues.id = phistory.`VALUE_ID`
WHERE $__timeFilter(phistory.`ADDED`) and value_id in (1261,1262,1264,1272,1282,1291,1331,3709,4148,6208)
ORDER BY  phistory.`ADDED`

Меняем для температуры вот эту строку value_id in (1261,1262,1264,1272,1282,1291,1331,3709,4148,6208), подставляя в скобки значения из первого запроса.

Знаю, что можно накрутить запрос и получше, но для моей задачи тестирования зашло и так.
$__time и $__timeFilter - это макросы Графаны.
Первый переводит столбец к виду UNIX_TIMESTAMP(столбец) as time_sec и, в принципе, это можно написать и самому, но вот второй превращается в $__timeFilter(column) -> column BETWEEN FROM_UNIXTIME(1492750877) AND FROM_UNIXTIME(1492750877), где юникс-время подставляется самой Графаной для выборки интервала времени.

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

Все очень очевидно и результаты можно посмотреть сразу после выбора опции до сохранения.

После создания панелей на дашборде можно задать время обновления и диапазон просмотра.

С налета не получилось отобразить страничку в домашних страницах(

ps. Пока открываю в меню через ссылку.
Удалось настроить автоизвещения - алерты. Они устанавливаются в исторических панелях (Там есть пункт с колокольчиком).
alert1
Интересно с каналами доставки алертов. Из знакомого вижу PushOver, email и телеграм. PushOver не использую, телеграм не завелся(, но всё решаемо с помощью емэйла.
alert2
Пришлось залезть в конфиг Графаны и настроить smtp.
smtp
Для связи использую модуль SmtpCatcher, его указал в качестве сервера почты для Графаны. В модуле по приходу письма от Графаны уже скриптом можно отправлять алерт с картинкой в телегу))

Discuss (5) (14)

See also:
2024-02-12 Китайская панель в подрозетник с экраном 480*480
2023-10-29 MQTT в МДМ - способ обработки топика через метод
2023-04-03 Todoer: обмен данными с Яндекс календарём
2023-03-31 Todoer: календарь на год
2023-03-30 Todoer: анонс + программное создание задачи
2022-05-08 Глобальный поиск - добавление своих сущностей. Upd Внедрено
2022-01-05 Яндекс Лампочка в Yandex Devices - добавление сцен
2021-04-18 Переезд на мастер спустя год
2021-03-24 Ещё о старте/остановке МДМ в Винде
2021-02-18 Модуль Todoer
2021-01-06 Для виндузятников - перенос бд на рам-диск
2020-11-22 Календарь-планировщик
2020-08-01 Irbis как терминал
2020-05-18 Китайская камера rtsp + vlc как перекодировщик для html
2020-05-12 Опыт интеграции МДМ с Я.Алисой ещё одним способом - без белого адреса, москита, ПУ.(дополнено)
2020-05-07 Поправим формат даты в Панели управления
2020-04-11 Баловство с шаблонами
2020-03-26 Простые правила - вариант модуля. ч. 2
2020-03-25 Простые правила - вариант модуля
2019-12-20 расширение средств работы с events updated
2019-11-20 По следам наших выступлений - сколько мы наэкономили?
2019-11-04 Группа как объект - экономим на коде - 2
2019-10-11 Группа как объект - экономим на коде
2019-09-25 Если у вас нет телеги...
2019-09-11 Датчик присутствия из ип камеры
2019-07-30 Win-платформа-замена ffmpeg для получения скриншотов из rstp - потока
2019-06-24 Форматированный отчет в телеграм - имитация таблицы
2019-04-30 Используем зомбо-ящик в Мажордомо
2019-03-24 О среднем в Мажордомо
2018-10-31 Об "обделённых" пользователях Win-систем -- с точки зрения кэширования winTTS сообщений
2018-09-16 Перезагрузка Мажордомо в Win-системах

Домодедово, Россия

На форуме: xor