NewsBlur/config/munin/mongodb_queues
2016-11-11 11:09:13 -08:00

32 lines
818 B
Python
Executable file

#!/srv/newsblur/venv/newsblur/bin/python
# -*- coding: utf-8 -*-
from vendor.munin.mongodb import MuninMongoDBPlugin
class MongoDBQueuesPlugin(MuninMongoDBPlugin):
args = "-l 0 --base 1000"
vlabel = "count"
title = "MongoDB queues"
info = "Queues"
queues = ("readers", "writers")
@property
def fields(self):
return [
(q, dict(
label = "%s" % q,
info = "%s" % q,
type = "GAUGE",
min = "0",
)) for q in self.queues
]
def execute(self):
status = self.connection.admin.command('serverStatus')
return dict(
(q, status["globalLock"]["currentQueue"][q])
for q in self.queues
)
if __name__ == "__main__":
MongoDBQueuesPlugin().run()