石墨,使用正则表达式来选择目标,或者替代

Dav*_*lla 4 graphite

我需要向石墨查询具有几个不同目标的数据; 目前我为每个目标做一个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
Run Code Online (Sandbox Code Playgroud)

有没有办法在一个查询中获得两个结果?我可以这样做:

http://graphite.example.com/render/?format=json&until=now&from=-1min&target=servers.srv*.solr.hits
Run Code Online (Sandbox Code Playgroud)

但我会得到很多我不感兴趣的其他数据.

我尝试使用正则表达式,像这样,但它不起作用:

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

在文档中,他们没有提到正则表达式和通配符,但他们在示例中使用通配符. http://graphite.readthedocs.org/en/0.9.10/render_api.html

有没有办法实现我的目标?

Dav*_*ies 8

Graphite使用globs而非正则表达式进行匹配.所以你的查询将是:

http://graphite.example.com/render/?format=json&until=now&from=-1min&target=servers.srv{231,325}.solr.hits
Run Code Online (Sandbox Code Playgroud)

  • 由于石墨是一个python应用程序,我猜它使用python [glob](http://docs.python.org/2/library/glob.html)模块,这几乎与[你的相同]链接](http://linux.die.net/Linux-CLI/x11655.htm)到linux.die.net,这看起来像我以前用过的石墨. (2认同)