2017-09-15 1 views
0

Grafana에 서로 다른 중첩 깊이의 데이터가 있습니다.Grafana에서 다양한 중첩 깊이의 데이터를 집계 할 수 있습니까?

foo.<host>.type.<type-id> 
foo.<host>.type.<type-id>.<subtype-id> 
foo.<host>.type.<type-id>.<subtype-id>.<more-nesting> 
... 

<host> 필드는 데이터와 <type-id>를 보내는 서버의 IP가 될 수는 처리한다는 메시지의 유형입니다 : 그것은 (중첩 깊이는 메시지 유형에 따라 다릅니다)과 같습니다. 상당히 많은 메시지 유형이 있지만 시각화를 위해 모든 호스트에서 집계 된 <type-id>의 첫 번째 레벨에만 관심이 있습니다. 예를 들어

, 나는이 데이터가있는 경우 :

foo.ip1.type.type1 = 3 
foo.ip1.type.type2.subtype1 = 5 
foo.ip2.type.type1 = 4 
foo.ip2.type.type2.subtype1 = 9 
foo.ip2.type.type2.subtype2 = 13 

는 차라리 같이 볼 것입니다 :

다음
foo.*.type.type1 = 7 (3+4) 
foo.*.type.type2 = 27 (5+9+13) 

당신은 어떤 유형을 볼 수있는이 그래프를 생산하기 쉬울 것 메시지가 가장 빈번합니다.

Grafana에서이를 표현하는 방법을 찾지 못했습니다. 유일한 옵션은 각 메시지 유형에 대한 쿼리를 수동으로 생성하여 그래프를 만드는 것입니다. OK 일 것입니다 소수의 유형 만 있다면,하지만 내 예제에서는, 유형의 수는 꽤 높고 심지어 더 나빠질 수 있습니다, 그들은 시간이 지남에 따라 변경할 수 있습니다. 새 메시지 유형이 추가되면 그래프를 변경하지 않고도 메시지 유형을보고 싶습니다.

Grafana는 이러한 방식으로 데이터를 집계 할 수 있습니까? 한 노드가 집계 한 데이터를 시각화하고 노드 뒤에 오는 모든 것을 합산 할 수 있습니까 (예 : du 명령의 --max-depth 옵션)?


저는 Grafana에 대해 경험이 없지만이 기능이 지원되지 않는다고 생각하기 시작했습니다. Grafana 사전 처리로 데이터를 수 있지만 데이터가

foo.ip1.type.type1 = 3 
foo.ip1.type.type2_subtype1 = 5 
foo.ip2.type.type1 = 4 
foo.ip2.type.type2_subtype1 = 9 
foo.ip2.type.type2_subtype2 = 13 

로 변환 할 수 있다면 그것은 또한 내 데이터 (종종 심지어 하나 개의 하위 유형이 매우 낮은에 아형의 수와 유효 해결 될 것인지 확실하지 않음).

답변

0

groupByNode 함수가 유용하다고 생각합니다. 다음과 같이하면 :

groupByNode(foo.ip1.type.*.*,3,"sumSeries") 

중첩 수준마다이 작업을 반복해야합니다. 희망이 도움이됩니다.

자세한 내용은 여기에서 볼 수 있습니다 : http://graphite.readthedocs.io/en/latest/functions.html#graphite.render.functions.groupByNode

당신이 당신이 aliasSub

귀하의 예를 들어 당신이 사용할 수있는 언급하는 방식을하려는 경우
관련 문제