我需要能够动态地发现为来自任意 Graphite/Carbon 服务的一个指标或一组指标配置的保留级别。现有的 Graphite API 似乎没有公开这些信息。
是否有一种经过批准的方法可以通过 HTTP API 检索此信息,而不是破解 Graphite 源或以其他方式暴露 carbon.conf 文件?
我需要能够动态地发现为来自任意 Graphite/Carbon 服务的一个指标或一组指标配置的保留级别。现有的 Graphite API 似乎没有公开这些信息。
是否有一种经过批准的方法可以通过 HTTP API 检索此信息,而不是破解 Graphite 源或以其他方式暴露 carbon.conf 文件?
是的你可以。您将破解源代码以实现此目的。基本的 Python 知识将是必不可少的。
/opt/graphite/storage/whisper
./opt/graphite/storage/whisper/alpha/beta/charlie.wsp
.bin/whisper-info.py
./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
在文件上“运行”,解析输出并将其显示为图形。