From e74f89c93cb76ac213123ba8165d59be13f19c37 Mon Sep 17 00:00:00 2001 From: Samuel Clay Date: Sun, 26 Feb 2012 23:29:57 -0800 Subject: [PATCH] Counting queue size for celery/redis. --- utils/munin/newsblur_updates.py | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/utils/munin/newsblur_updates.py b/utils/munin/newsblur_updates.py index 0e6438938..f2fb50aa3 100755 --- a/utils/munin/newsblur_updates.py +++ b/utils/munin/newsblur_updates.py @@ -1,4 +1,5 @@ #!/usr/bin/env python +import redis from utils.munin.base import MuninGraph graph_config = { @@ -16,15 +17,16 @@ def calculate_metrics(): import datetime import commands from apps.rss_feeds.models import Feed + from django.conf import settings hour_ago = datetime.datetime.utcnow() - datetime.timedelta(hours=1) - update_feeds_query = "ssh -i ~sclay/.ssh/id_dsa sclay@db01 \"sudo rabbitmqctl list_queues -p newsblurvhost | grep %s\" | awk '{print $2}'" - + r = redis.Redis(connection_pool=settings.REDIS_POOL) + return { 'update_queue': Feed.objects.filter(queued_date__gte=hour_ago).count(), 'feeds_fetched': Feed.objects.filter(last_update__gte=hour_ago).count(), - 'celery_update_feeds': commands.getoutput(update_feeds_query % 'update_feeds'), - 'celery_new_feeds': commands.getoutput(update_feeds_query % 'new_feeds'), + 'celery_update_feeds': r.llen("update_feeds"), + 'celery_new_feeds': r.llen("new_feeds"), } if __name__ == '__main__':