我需要能够动态发现适用于任意Graphite / Carbon服务的指标或指标集的已配置保留级别。现有的Graphite API似乎没有公开这些信息。
是否有通过HTTP API检索此信息的受制裁方式,但不会破坏Graphite源或以其他方式公开carbon.conf文件?
答案 0 :(得分:1)
是的,你可以。你将成为黑客攻击来实现这一目标。基本的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库的whisper.info(path)
方法,或者可以在文件上“运行”bin/whisper-info.py
,解析输出并将其显示为图形。