2

我需要能够动态地发现为来自任意 Graphite/Carbon 服务的一个指标或一组指标配置的保留级别。现有的 Graphite API 似乎没有公开这些信息。

是否有一种经过批准的方法可以通过 HTTP API 检索此信息,而不是破解 Graphite 源或以其他方式暴露 carbon.conf 文件?

4

1 回答 1

1

是的你可以。您将破解源代码以实现此目的。基本的 Python 知识将是必不可少的。

  1. 目标指标 - alpha.beta.charlie
  2. 默认指标存储 - /opt/graphite/storage/whisper.
  3. 度量文件 - /opt/graphite/storage/whisper/alpha/beta/charlie.wsp.
  4. 与耳语包一起,还有一个脚本- bin/whisper-info.py.
  5. /whisper-info.py /opt/graphite/storage/whisper/alpha/beta/charlie.wsp

你会得到这个-

maxRetention: 31536000
xFilesFactor: 0.0
aggregationMethod: sum
fileSize: 1261468

Archive 0
retention: 31536000
secondsPerPoint: 300
points: 105120
size: 1261440
offset: 28

您将希望通过 webapp 动态显示其中的一部分。为此,请在 graphite-web/webapp/graphite/render/functions.py. 要使其“出现”在 webapp GUI 中,您必须在 graphite-web/webapp/content/js/composer_widgets.js.

就函数而言,您可以调用whisper.info(path)whisper 库的方法,或者您可以bin/whisper-info.py在文件上“运行”,解析输出并将其显示为图形。

于 2013-11-28T05:36:21.030 回答