NewsBlur/archive/munin/mongodb_queues
2022-02-16 21:16:24 -08:00

32 lines
819 B
Python
Executable file

#!/srv/newsblur/venv/newsblur3/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()