나는 Grafana에 쿼리를 가지고 : influxdb의 여러 차원에서 집계 함수를 호출 할 수 있습니까?
SELECT mean(value) FROM "queues_value" WHERE "host" =~ /$host/ AND "type" = 'rabbitmq_messages' AND $timeFilter GROUP BY time($interval), "host", "instance"
현재이 호스트 당 큐마다 별도의 그래프를 보여 주어진 시간 기간 동안 rabbitmq 큐에 메시지의 평균 수를 그래프.
나는 본질적으로 똑같은 작업을 원하지만 모든 대기열을 함께 추가하는 호스트 당 단 하나의 그래프로 결과하고 싶습니다. 이는 지정된 기간 (0-초, host
초 및 시간 간격을 따로 유지) 동안 모든 메시지 수의 평균을 취한 다음 이들을 합계 함 (이번에는 host
과 시간 간격을 별도로 유지함)을 의미합니다.
mean
또는 sum
과 같은 각 집계 함수는 전체 쿼리에만 영향을 미치며 하나의 집계 함수에 GROUP BY
문을 적용하는 방법이없는 것처럼 보입니다. 그것이 가능했던 경우
는,이 같은 짓을 한 것 :
SELECT sum(mean(value) GROUP BY "instance") FROM "queues_value" WHERE "host" =~ /$host/ AND "type" = 'rabbitmq_messages' AND $timeFilter GROUP BY time($interval), "host"
또는이 :
SELECT sum(value) FROM (SELECT mean(value) FROM "queues_value" WHERE "host" =~ /$host/ AND "type" = 'rabbitmq_messages' AND $timeFilter GROUP BY time($interval), "host", "instance") GROUP BY time($interval), "host"
하지만 그 중 어느 것도 유효한 구문됩니다.
본질적으로 주어진 기간 동안 하나의 특정 호스트에서 하나의 특정 대기열을 포함하는 집계를 먼저 작업하고 그 다음에 해당 호스트의 계산 결과로 구성된 집계를 작업하려고합니다. 같은 기간.
나는 influxdb 또는 grafana에서 원하는 것을 성취 할 수있는 방법이 있습니까?