From 265bbfb1c06fe664207e7836cf17b89bfdfb17fd Mon Sep 17 00:00:00 2001 From: Ralph Bean Date: Tue, 28 Jul 2015 15:37:50 +0000 Subject: [PATCH] Add some new fedmsg health bits to graph in collectd. --- .../templates/fedmsg-service-collectd.py | 31 +++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/roles/collectd/fedmsg-service/templates/fedmsg-service-collectd.py b/roles/collectd/fedmsg-service/templates/fedmsg-service-collectd.py index 171922e332..12305e3c31 100644 --- a/roles/collectd/fedmsg-service/templates/fedmsg-service-collectd.py +++ b/roles/collectd/fedmsg-service/templates/fedmsg-service-collectd.py @@ -49,6 +49,37 @@ def print_consumer(service, consumer): consumer['headcount_out'] ) + # And these got introduced even later + if 'times' in consumer: + maxval = max(consumer['times'] or [0]) + minval = min(consumer['times'] or [0]) + + avgval = 0 + if consumer['times']: + avgval = sum(consumer['times']) / len(consumer['times']) + + print "PUTVAL %s/%s/response_time-%s interval=5 %i:%i" % ( + hostname, + service, + '%s_min' % consumer['name'], + timestamp, + minval, + ) + print "PUTVAL %s/%s/response_time-%s interval=5 %i:%i" % ( + hostname, + service, + '%s_max' % consumer['name'], + timestamp, + maxval, + ) + print "PUTVAL %s/%s/response_time-%s interval=5 %i:%i" % ( + hostname, + service, + '%s_avg' % consumer['name'], + timestamp, + avgval, + ) + def print_producer(service, producer): timestamp = int(time.time())