1
0
Fork 0
mirror of https://github.com/munin-monitoring/contrib.git synced 2025-07-21 02:33:18 +00:00
Munin-Contrib/plugins/mongodb/mongo_conn
Lars Kruse c6f88968d1 Improve perlpod formatting for multiple plugins
Escpecially the final marker ("=cut") was missing in these plugins.
2020-10-06 00:29:38 +02:00

62 lines
1.1 KiB
Python
Executable file

#!/usr/bin/env python
"""
=head1 NAME
mongo_conn - MongoDB connections Plugin
=head1 APPLICABLE SYSTEMS
Works until MongoDB 3.6. The httpinterface was later removed.
=head1 CONFIGURATION
[mongo_lock]
env.MONGO_DB_URI mongodb://user:password@host:port/dbname
=head1 AUTHOR
Original script there : https://github.com/comerford/mongo-munin
Doc added by Alban Espie-Guillon <alban.espie@alterway.fr>
=cut
"""
import urllib2
import sys
try:
import json
except ImportError:
import simplejson as json
def getServerStatus():
raw = urllib2.urlopen( "http://127.0.0.1:28017/_status" ).read()
return json.loads( raw )["serverStatus"]
name = "connections"
def doData():
print name + ".value " + str( getServerStatus()["connections"]["current"] )
def doConfig():
print "graph_title MongoDB current connections"
print "graph_args --base 1000 -l 0"
print "graph_vlabel connections"
print "graph_category db"
print name + ".label " + name
if __name__ == "__main__":
if len(sys.argv) > 1 and sys.argv[1] == "config":
doConfig()
else:
doData()