Yes, you can. You'll be hacking the source to make this happen. Rudimentary Python knowledge would be essential.
- Target metric- alpha.beta.charlie
- Default metric storage-
/opt/graphite/storage/whisper
.
- Metric file-
/opt/graphite/storage/whisper/alpha/beta/charlie.wsp
.
- Along with the whisper package, comes a script-
bin/whisper-info.py
.
- Do
/whisper-info.py /opt/graphite/storage/whisper/alpha/beta/charlie.wsp
.
You will get this-
maxRetention: 31536000
xFilesFactor: 0.0
aggregationMethod: sum
fileSize: 1261468
Archive 0
retention: 31536000
secondsPerPoint: 300
points: 105120
size: 1261440
offset: 28
You'll want part of this to be dispalyed dynamically via the webapp.
For that, declare a custom method in
graphite-web/webapp/graphite/render/functions.py
. To make it 'appear' in the webapp GUI, you'll have to make an entry in
graphite-web/webapp/content/js/composer_widgets.js
.
As far as the function is concerned, you can invoke whisper.info(path)
method of the whisper library, or you can 'run' bin/whisper-info.py
on the file, parse the output and display it as a graph.