Вкратце структура проекта:
1) База данных mySql, куда каждую минуту в таблицу machines_records пишется N строк с массивом JSON в качестве одного из параметров
2) Временную зону поставил уже +03:00, так как тестировал разные причины ошибок в работе с графаной (если нужно будет вернуть на Гринвич - дайте знать)
3) Есть представление machines_records_expanded чтобы парсить эти строки таблицы machines_records для отображения данных в графане, код для создания представления был:
CREATE OR REPLACE VIEW machines_records_expanded AS
SELECT
mr.id,
mr.machine_id,
m.unique_number,
jt.`time`,
jt.tube,
jt.lamp
FROM
machines_records_new mr
JOIN machines m ON mr.machine_id = m.id,
JSON_TABLE(mr.record, '$[*]' COLUMNS (
`time` DATETIME PATH '$.time',
`tube` INT PATH '$.tube',
`lamp` INT PATH '$.lamp'
)) jt;
Как несложно понять - цель мониторить состояние tube и lamp в нужный период времени
Представление данные разбирает прекрасно, структура сохраняется
Пытаюсь в Графане настроить отображение данных запросом
SELECT
`time` AS "time",
tube,
lamp
FROM
machines_records_expanded
WHERE
unique_number = '401'
AND $__timeFilter(`time`)
ORDER BY
`time`;
По умолчанию стоит диапазон данных за последние 6 часов
Все отображает корректно
Но пытаюсь сузить круг до диапазон меньше 6 часов и Графана отказывается получать данные с таблицы. Просто, без ошибок. No data
Вариант с диапазоном больше 6 часов (например, за последние 12 часов) - работает. А вот меньше - уже нет.
Полагаю, проблема может быть еще в том, что данные в таблице имеют временную зону UTC (то есть -3 от МСК), а вот в Графане почему-то отображаются корректно. Но именно при уменьшении диапазона какие-то фокусы