У меня есть ряд, disk,
, который содержит path
(/mnt/disk1
, /mnt/disk2
и т.д.) и total
пространство на диске. Он также включает значения free
и used
. Эти значения обновляются с заданным интервалом. То, что я хотел бы сделать, - это запрос, чтобы получить сумму total
из last()
каждого пути. Я также хотел бы сделать то же самое для free
и для used
, чтобы получить совокупность общего размера, свободного места и пробела всех моих дисков на моем сервере.СУММА (ПОСЛЕДНИЙ()) на GROUP BY
У меня есть запрос здесь будет получить меня last(total)
всех дисков, сгруппированных по пути (для различения):
select last(total) as total from disk where path =~ /(mnt\/disk).*/ group by path
В настоящее время, это возвращает 5 серии, каждая из которых содержит 1 строку (последнее) и значение его total
. Затем я хочу взять сумму этих серий, но я не могу просто обернуть last(total)
в вызов функции sum()
. Есть ли способ сделать это, что мне не хватает?
Здесь речь идет о вложенных функциях, которые еще не поддерживаются в InfluxDB. https://github.com/influxdata/influxdb/issues/6823. Обходным решением является создание CQ для одного значения (например, total) и запрос CQ с использованием другой функции (например, last()). – Jason