Grafana 中一个查询的动态系列数
Dynamic number of series with one query in Grafana
有没有办法在 Grafana 中使用 Postgres 连接在一个查询中获取多个系列?假设我有 5 个属性与我的数据关联,我想使用一个查询显示 5 个系列,这样它是动态的。
当添加或删除一个属性时,系列也随之完成。
attribute | bits | created_at
------------------------------
1 | 44632 | <datetime>
4 | 124854 | <datetime>
2 | 488 | <datetime>
2 | 8 | <datetime>
4 | 384332 | <datetime>
3 | 44632 | <datetime>
1 | 6732 | <datetime>
3 | 162 | <datetime>
示例查询:
SELECT
$__time(created_at),
sum(bits),
attribute
FROM
table
WHERE
$__timeFilter(created_at)
GROUP BY created_at, attribute
ORDER BY created_at;
并且属性具有不同的值(1、2、3、4),所以我得到 4 个不同的系列,每个系列使用某种类似的查询显示特定属性值的数据。
有办法吗?
您可能希望根据属性进行分组,就像您在示例中所做的那样。
您需要的确切查询如下:
SELECT
$__time(created_at),
attribute as metric,
sum(bits)
FROM
table
WHERE
$__timeFilter(created_at)
GROUP BY created_at, attribute
ORDER BY created_at;
通过为属性指定 'metric' 别名,它将被选为单个时间序列的名称,分组应负责其余部分
有没有办法在 Grafana 中使用 Postgres 连接在一个查询中获取多个系列?假设我有 5 个属性与我的数据关联,我想使用一个查询显示 5 个系列,这样它是动态的。
当添加或删除一个属性时,系列也随之完成。
attribute | bits | created_at
------------------------------
1 | 44632 | <datetime>
4 | 124854 | <datetime>
2 | 488 | <datetime>
2 | 8 | <datetime>
4 | 384332 | <datetime>
3 | 44632 | <datetime>
1 | 6732 | <datetime>
3 | 162 | <datetime>
示例查询:
SELECT
$__time(created_at),
sum(bits),
attribute
FROM
table
WHERE
$__timeFilter(created_at)
GROUP BY created_at, attribute
ORDER BY created_at;
并且属性具有不同的值(1、2、3、4),所以我得到 4 个不同的系列,每个系列使用某种类似的查询显示特定属性值的数据。
有办法吗?
您可能希望根据属性进行分组,就像您在示例中所做的那样。
您需要的确切查询如下:
SELECT
$__time(created_at),
attribute as metric,
sum(bits)
FROM
table
WHERE
$__timeFilter(created_at)
GROUP BY created_at, attribute
ORDER BY created_at;
通过为属性指定 'metric' 别名,它将被选为单个时间序列的名称,分组应负责其余部分