Я настраиваю Grafana для внутренней панели инструментов для компании, в которой я работаю.У нас есть телефонная система, которую мы отслеживаем, и показатели сохраняются в базе данных.Я извлек ключевые метрики и сохранил их в базе данных Postgres.Вот как это выглядит:
postgres=# SELECT * FROM phonedata LIMIT 5;
id | date | data
----+------------+----------------------------------------------------------------------------------
16 | 2019-05-27 | {"avgDuration": "608", "avgQueuetime": "0:02:46.716667", "voicemailCount": "6"}
17 | 2019-05-26 | {"avgDuration": "676", "avgQueuetime": "None", "voicemailCount": "0"}
18 | 2019-05-25 | {"avgDuration": "506", "avgQueuetime": "0:01:32.684211", "voicemailCount": "1"}
19 | 2019-05-24 | {"avgDuration": "540", "avgQueuetime": "0:02:14.784091", "voicemailCount": "11"}
20 | 2019-05-23 | {"avgDuration": "616", "avgQueuetime": "0:03:09.433962", "voicemailCount": "10"}
(5 rows)
Эти данные показывают статистику для даты, как показано в столбце «дата».Это все отлично работает.У меня есть данные за последние 90 дней, поэтому нет проблем с нехваткой данных.
Теперь я пытаюсь построить график для Grafana, который показывает среднюю продолжительность телефонного разговора в день, бит, я могуне получается.
Вот ссылка на изображение кода, который я написал, и график на Grafana.StackOverflow не позволяет мне публиковать изображение напрямую
https://i.imgur.com/3uQe9t5.png
Вот код, написанный:
SELECT
date AS "time",
data->>'avgDuration'::VARCHAR as "values"
FROM
phonedata
WHERE
$__timeFilter(date) AND
data->>'avgDuration' NOT ilike 'None'
ORDER BY 1
Я чувствую, что я очень близко, ноеще не совсем там.Я пробовал много разных вариантов на этом, но не могу понять.
Любая помощь будет огромной.
Спасибо
(я использую Grafana v5.4.2(commit: d812109))