xen_cpus now detects number of cpus
[invirt/packages/xvm-munin-config.git] / host / usr / share / xvm-munin-host-config / plugins / xen_cpu
index 788333e..644c0d0 100755 (executable)
@@ -6,6 +6,7 @@ from xen.xm.main import SERVER_LEGACY_XMLRPC, SERVER_XEN_API, parseServer, parse
 from xen.xend import sxp
 import atexit
 import sys
+import os
 
 serverType, serverURI = parseServer()
 
@@ -62,15 +63,19 @@ def getDomains():
             ret['uuid_'+sxp.child_value(d, 'uuid', 'NONE').replace('-', '_')] = data
         return ret
 
+cpus = os.sysconf('SC_NPROCESSORS_CONF')
+
+upper_limit = cpus * 100
+
 if cmd == 'config':
     print """
 graph_title Xen domain CPU usage
-graph_args --base 1000 -r --lower-limit 0 --upper-limit 800
+graph_args --base 1000 -r --lower-limit 0 --upper-limit %d
 graph_vlabel %
 graph_scale no
 graph_info This graph shows how CPU time is spent by Xen domains.
 graph_category system
-graph_period second"""
+graph_period second""" % (upper_limit,)
     domains = getDomains()
     for d in sorted(domains):
         name = domains[d]['name']