From c3821e777f94b014835f3f29d74a56220a8e8d70 Mon Sep 17 00:00:00 2001 From: Daniele Sluijters Date: Wed, 21 Aug 2013 16:21:02 -0700 Subject: [PATCH] Add a Metrics tab. This gives you access to all metrics. --- puppetboard/app.py | 12 ++++++++++++ puppetboard/templates/layout.html | 1 + puppetboard/templates/metric.html | 14 ++++++++++++++ puppetboard/templates/metrics.html | 9 +++++++++ 4 files changed, 36 insertions(+) create mode 100644 puppetboard/templates/metric.html create mode 100644 puppetboard/templates/metrics.html diff --git a/puppetboard/app.py b/puppetboard/app.py index 14dfd61..0fbf684 100644 --- a/puppetboard/app.py +++ b/puppetboard/app.py @@ -196,3 +196,15 @@ def query(): query='[{0}]'.format(form.query.data)) return render_template('query.html', form=form, result=result) return render_template('query.html', form=form) + +@app.route('/metrics') +def metrics(): + metrics = puppetdb._query('metrics', path='mbeans') + for key,value in metrics.iteritems(): + metrics[key]=value.split('/')[3] + return render_template('metrics.html', metrics=metrics) + +@app.route('/metric/') +def metric(metric): + metric = puppetdb.metric(metric) + return render_template('metric.html', metric=metric) diff --git a/puppetboard/templates/layout.html b/puppetboard/templates/layout.html index abad3af..423b17f 100644 --- a/puppetboard/templates/layout.html +++ b/puppetboard/templates/layout.html @@ -25,6 +25,7 @@ ('nodes', 'Nodes'), ('facts', 'Facts'), ('reports', 'Reports'), + ('metrics', 'Metrics'), ('query', 'Query'), ] %} Metric + + + {% for key,value in metric.iteritems() %} + + + + + {% endfor %} + +
{{key}}{{value}}
+{% endblock content %} diff --git a/puppetboard/templates/metrics.html b/puppetboard/templates/metrics.html new file mode 100644 index 0000000..8f84658 --- /dev/null +++ b/puppetboard/templates/metrics.html @@ -0,0 +1,9 @@ +{% extends 'layout.html' %} +{% block content %} +

Metrics

+ +{% endblock content %}