2013-08-14 3 views
4

몇 가지 다른 목표를 가진 데이터에 대해 그래파이트를 쿼리해야합니다. 현재 각 대상에 대해 http 쿼리를 수행합니다. 예 :그래파이트, 정규 표현식을 사용하여 타겟 또는 대안을 선택하십시오.

http://graphite.example.com/render/?format=json&until=now&from=-1min&target=servers.srv231.solr.hits 
http://graphite.example.com/render/?format=json&until=now&from=-1min&target=servers.srv325.solr.hits 

하나의 쿼리에서 두 개의 결과를 얻는 방법이 있습니까?

http://graphite.example.com/render/?format=json&until=now&from=-1min&target=servers.srv*.solr.hits 

을하지만 난에 관심이 아니에요 다른 많은 데이터를 얻을 것 내가 다음과 같이 정규 표현식을 사용하려고했습니다

,하지만 작동하지 않습니다. 다음과 같이 내가 할 수있는 :

http://graphite.example.com/render/?format=json&until=now&from=-1min&target=servers.srv(231|325).solr.hits 

doc 후, 그들은, 을 정규 표현식이나 와일드 카드를 언급하지 않지만 그들은 예에 와일드 카드를 사용합니다. http://graphite.readthedocs.org/en/0.9.10/render_api.html

내 목표를 달성하는 방법은 무엇입니까?

+0

가 난 그냥'target' 매개 변수가 여러 번 반복 될 수 있음을 보았다, 그래서 나는 http://graphite.example.com/render/?format=json&until=now&from=을 할 수있는 : 그래서 당신의 쿼리는 것 -1min & target = servers.srv231.solr.hits & target = servers.srv325.solr.hits. 괜찮아. 그러나 정규 표현식이나보다 간결한 방법을 사용할 수 있습니까? –

답변

8

흑연은 정규 표현식이 아닌 glob를 사용하여 일치시킵니다.

http://graphite.example.com/render/?format=json&until=now&from=-1min&target=servers.srv{231,325}.solr.hits 
+0

작동합니다. 감사합니다! glob 패턴에 대한 참조가 있습니까? 이 http://en.wikipedia.org/wiki/Glob_(programming)에는 대괄호 {}가 포함되지 않습니다. 이 하나있다 : http://linux.die.net/Linux-CLI/x11655.htm 또는 어쩌면 표준 하나가 아닌가요? 나는 흑연에서 glob에 관한 문서를 찾지 못했습니다. –

+2

그래파이트는 파이썬 응용 프로그램이므로 python [glob] (http://docs.python.org/2/library/glob.html) 모듈을 사용하고있는 것으로 추측됩니다.이 모듈은 [ 당신의 링크] (http://linux.die.net/Linux-CLI/x11655.htm)에서 linux.die.net으로 이동합니다. –

+1

python glob 모듈에 대한 링크는 중괄호 {}를 언급하지 않습니다. 파이썬 글로브 http://bugs.python.org/issue9584에 중괄호를 지원하는 패치가 있지만 현재 구현되지 않은 것으로 보이며 python glob 모듈에 문서화되어 있지 않습니다. . ?? –

관련 문제