Ejemplo n.º 1
0
    def _getuptime(self):
        """Get system statistics from the output of the 'uptime' command.
        """

        uptime_cmd = "/usr/bin/uptime"

        (retval, output) = utils.safe_getstatusoutput(uptime_cmd)

        if retval != 0:
            log.log(
                "<system>system._getuptime(): error calling '%s'" %
                (uptime_cmd), 5)
            return None

        uptime_dict = {}

        uptime_re = ".+up (?P<uptime>.+), (?P<users>[0-9]+) users?, load averages: (?P<loadavg1>[0-9.]+) (?P<loadavg5>[0-9.]+) (?P<loadavg15>[0-9.]+)"
        inx = re.compile(uptime_re)
        sre = inx.search(output)
        if sre:
            uptime_dict = sre.groupdict()
        else:
            log.log(
                "<system>system._getuptime(): could not parse uptime output '%s'"
                % (output), 5)
            return None

        # convert types
        uptime_dict['uptime'] = uptime_dict['uptime']
        uptime_dict['users'] = int(uptime_dict['users'])
        uptime_dict['loadavg1'] = float(uptime_dict['loadavg1'])
        uptime_dict['loadavg5'] = float(uptime_dict['loadavg5'])
        uptime_dict['loadavg15'] = float(uptime_dict['loadavg15'])

        return uptime_dict
Ejemplo n.º 2
0
    def _getuptime(self):
        """Get system statistics from the output of the 'uptime' command.
        """

        uptime_cmd = "/usr/bin/uptime"

        (retval, output) = utils.safe_getstatusoutput(uptime_cmd)

        if retval != 0:
            log.log("<system>system._getuptime(): error calling '%s'"%(uptime_cmd), 5)
            return None

        uptime_dict = {}

        uptime_re = ".+up (?P<uptime>.+), (?P<users>[0-9]+) users?, load averages: (?P<loadavg1>[0-9.]+) (?P<loadavg5>[0-9.]+) (?P<loadavg15>[0-9.]+)"
        inx = re.compile(uptime_re)
        sre = inx.search(output)
        if sre:
            uptime_dict = sre.groupdict()
        else:
            log.log("<system>system._getuptime(): could not parse uptime output '%s'" % (output), 5)
            return None

        # convert types
        uptime_dict['uptime'] = uptime_dict['uptime']
        uptime_dict['users'] = int(uptime_dict['users'])
        uptime_dict['loadavg1'] = float(uptime_dict['loadavg1'])
        uptime_dict['loadavg5'] = float(uptime_dict['loadavg5'])
        uptime_dict['loadavg15'] = float(uptime_dict['loadavg15'])

        return uptime_dict
Ejemplo n.º 3
0
    def _getvmstat(self):
        """Get system virtual memory statistics from the 'vm_stat' command.
        """

        vmstat_cmd = "/usr/bin/vm_stat"

        (retval, output) = utils.safe_getstatusoutput(vmstat_cmd)

        if retval != 0:
            log.log(
                "<system>system._getvmstat(): error calling '%s'" %
                (vmstat_cmd), 5)
            return None

        vmstat_dict = {}

        for l in output.split('\n'):
            if l.find('Pages free:') != -1:
                vmstat_dict['pages_free'] = long(l.split()[-1][:-1])
            elif l.find('Pages active:') != -1:
                vmstat_dict['pages_active'] = long(l.split()[-1][:-1])
            elif l.find('Pages inactive:') != -1:
                vmstat_dict['pages_inactive'] = long(l.split()[-1][:-1])
            elif l.find('Pages wired down:') != -1:
                vmstat_dict['pages_wired_down'] = long(l.split()[-1][:-1])
            elif l.find('Translation faults') != -1:
                vmstat_dict['ctr_translation_faults'] = long(
                    l.split()[-1][:-1])
            elif l.find('Pages copy-on-write:') != -1:
                vmstat_dict['ctr_pages_copyonwrite'] = long(l.split()[-1][:-1])
            elif l.find('Pages zero filled:') != -1:
                vmstat_dict['ctr_pages_zero_filled'] = long(l.split()[-1][:-1])
            elif l.find('Pages reactivated:') != -1:
                vmstat_dict['ctr_pages_reactivated'] = long(l.split()[-1][:-1])
            elif l.find('Pageins:') != -1:
                vmstat_dict['ctr_pageins'] = long(l.split()[-1][:-1])
            elif l.find('Pageouts:') != -1:
                vmstat_dict['ctr_pageouts'] = long(l.split()[-1][:-1])

        return vmstat_dict
Ejemplo n.º 4
0
    def _getvmstat(self):
        """Get system virtual memory statistics from the 'vm_stat' command.
        """

        vmstat_cmd = "/usr/bin/vm_stat"

        (retval, output) = utils.safe_getstatusoutput(vmstat_cmd)

        if retval != 0:
            log.log("<system>system._getvmstat(): error calling '%s'"%(vmstat_cmd), 5)
            return None

        vmstat_dict = {}

        for l in output.split('\n'):
            if l.find('Pages free:') != -1:
                vmstat_dict['pages_free'] = long(l.split()[-1][:-1])
            elif l.find('Pages active:') != -1:
                vmstat_dict['pages_active'] = long(l.split()[-1][:-1])
            elif l.find('Pages inactive:') != -1:
                vmstat_dict['pages_inactive'] = long(l.split()[-1][:-1])
            elif l.find('Pages wired down:') != -1:
                vmstat_dict['pages_wired_down'] = long(l.split()[-1][:-1])
            elif l.find('Translation faults') != -1:
                vmstat_dict['ctr_translation_faults'] = long(l.split()[-1][:-1])
            elif l.find('Pages copy-on-write:') != -1:
                vmstat_dict['ctr_pages_copyonwrite'] = long(l.split()[-1][:-1])
            elif l.find('Pages zero filled:') != -1:
                vmstat_dict['ctr_pages_zero_filled'] = long(l.split()[-1][:-1])
            elif l.find('Pages reactivated:') != -1:
                vmstat_dict['ctr_pages_reactivated'] = long(l.split()[-1][:-1])
            elif l.find('Pageins:') != -1:
                vmstat_dict['ctr_pageins'] = long(l.split()[-1][:-1])
            elif l.find('Pageouts:') != -1:
                vmstat_dict['ctr_pageouts'] = long(l.split()[-1][:-1])

        return vmstat_dict