【发布时间】:2019-10-14 14:37:06
【问题描述】:
我正在为我工作的公司的内部仪表板设置 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(提交:d812109))
【问题讨论】:
标签: json postgresql grafana