Exemple #1
0
def server_health():
    """
    Get a bunch of stats pertaining to current server health.
    """
    def _maxdisk():
        maxdisk = dict(pct=0)

        # parse df output to find max disk use indicator
        header_line = ""
        for cmd, usetype in (("df -h", "space"),
                             ("df -i", "inode")):
            output = utils.local(cmd)
            for i, line in enumerate(output.splitlines()):
                if i == 0:
                    header_line = line
                if line.startswith("/dev") or line.startswith(".host"): # added for VMWare compatibility
                    pct_use = line.split()[-2]
                    if pct_use.endswith("%"):
                        pct = int(pct_use[:-1])
                        if pct > maxdisk["pct"]:
                            maxdisk = dict(pct=pct,
                                           type=usetype,
                                           detail="\n".join((header_line,
                                                             line)))
        return maxdisk

    # get num active tasks
    from celery.worker.control.builtins import dump_active
    num_active_tasks = len(dump_active(None)) # no panel needed

    return dict(maxdisk=_maxdisk(),
                uptime=get_uptime(),
                loadavg_curr=psi.loadavg()[0],
                num_active_tasks=num_active_tasks)
 def test_values(self):
     psiavg = psi.loadavg()
     if hasattr(os, 'getloadavg'):
         osavg = os.getloadavg()
         for i, j in zip(psiavg, osavg):
             self.assertAlmostEqual(i, j)
     else:
         for l in psiavg:
             self.assert_(0.0 <= l < 1000.0, '0.0 < %f < 1000.0'%l)
Exemple #3
0
 def test_values(self):
     psiavg = psi.loadavg()
     if hasattr(os, 'getloadavg'):
         osavg = os.getloadavg()
         for i, j in zip(psiavg, osavg):
             self.assertAlmostEqual(i, j)
     else:
         for l in psiavg:
             self.assert_(0.0 <= l < 1000.0, '0.0 < %f < 1000.0' % l)
Exemple #4
0
def get_loadavg():
    return psi.loadavg()
Exemple #5
0
def check_psi():
    psi.loadavg()
    psi.boottime()
    psi.uptime()
Exemple #6
0
 def test_value_types(self):
     loadavg = psi.loadavg()
     for v in loadavg:
         self.failUnless(isinstance(v, float))
Exemple #7
0
 def test_len(self):
     loadavg = psi.loadavg()
     self.assertEqual(len(loadavg), 3)
Exemple #8
0
 def test_type(self):
     loadavg = psi.loadavg()
     self.failUnless(isinstance(loadavg, tuple))
 def test_value_types(self):
     loadavg = psi.loadavg()
     for v in loadavg:
         self.failUnless(isinstance(v, float))
Exemple #10
0
 def test_len(self):
     loadavg = psi.loadavg()
     self.assertEqual(len(loadavg), 3)
Exemple #11
0
 def test_type(self):
     loadavg = psi.loadavg()
     self.failUnless(isinstance(loadavg, tuple))
Exemple #12
0
def check_psi():
    psi.loadavg()
    psi.boottime()
    psi.uptime()