Example #1
0
    def get(self):
        stats = self._empty_stats()

        first_sample, last_sample, _ = self._samples.stats()
        if first_sample is None:
            return stats

        stats.update(_get_interfaces_stats(first_sample, last_sample))

        interval = last_sample.timestamp - first_sample.timestamp

        jiffies = (
            last_sample.pidcpu.user - first_sample.pidcpu.user
        ) % JIFFIES_BOUND
        stats['cpuUserVdsmd'] = jiffies / interval
        jiffies = (
            last_sample.pidcpu.sys - first_sample.pidcpu.sys
        ) % JIFFIES_BOUND
        stats['cpuSysVdsmd'] = jiffies / interval

        jiffies = (
            last_sample.totcpu.user - first_sample.totcpu.user
        ) % JIFFIES_BOUND
        stats['cpuUser'] = jiffies / interval / self._ncpus
        jiffies = (
            last_sample.totcpu.sys - first_sample.totcpu.sys
        ) % JIFFIES_BOUND
        stats['cpuSys'] = jiffies / interval / self._ncpus
        stats['cpuIdle'] = max(0.0,
                               100.0 - stats['cpuUser'] - stats['cpuSys'])
        stats['memUsed'] = last_sample.memUsed
        stats['anonHugePages'] = last_sample.anonHugePages
        stats['cpuLoad'] = last_sample.cpuLoad

        stats['diskStats'] = last_sample.diskStats
        stats['thpState'] = last_sample.thpState

        if self._boot_time():
            stats['bootTime'] = self._boot_time()

        stats['numaNodeMemFree'] = last_sample.numaNodeMem.nodesMemSample
        stats['cpuStatistics'] = _get_cpu_core_stats(
            first_sample, last_sample)

        stats['v2vJobs'] = v2v.get_jobs_status()
        return stats
Example #2
0
    def get(self):
        stats = self._empty_stats()

        first_sample, last_sample, _ = self._samples.stats()
        if first_sample is None:
            return stats

        stats.update(self._getInterfacesStats())

        interval = last_sample.timestamp - first_sample.timestamp

        jiffies = (last_sample.pidcpu.user -
                   first_sample.pidcpu.user) % JIFFIES_BOUND
        stats['cpuUserVdsmd'] = jiffies / interval
        jiffies = (last_sample.pidcpu.sys -
                   first_sample.pidcpu.sys) % JIFFIES_BOUND
        stats['cpuSysVdsmd'] = jiffies / interval

        jiffies = (last_sample.totcpu.user -
                   first_sample.totcpu.user) % JIFFIES_BOUND
        stats['cpuUser'] = jiffies / interval / self._ncpus
        jiffies = (last_sample.totcpu.sys -
                   first_sample.totcpu.sys) % JIFFIES_BOUND
        stats['cpuSys'] = jiffies / interval / self._ncpus
        stats['cpuIdle'] = max(0.0, 100.0 - stats['cpuUser'] - stats['cpuSys'])
        stats['memUsed'] = last_sample.memUsed
        stats['anonHugePages'] = last_sample.anonHugePages
        stats['cpuLoad'] = last_sample.cpuLoad

        stats['diskStats'] = last_sample.diskStats
        stats['thpState'] = last_sample.thpState

        if self._boot_time():
            stats['bootTime'] = self._boot_time()

        stats['numaNodeMemFree'] = last_sample.numaNodeMem.nodesMemSample
        stats['cpuStatistics'] = self._getCpuCoresStats()

        stats['v2vJobs'] = v2v.get_jobs_status()
        return stats
Example #3
0
    def get(self):
        stats = self._empty_stats()

        if len(self._samples) < 2:
            return stats

        stats.update(self._getInterfacesStats())

        hs0, hs1 = self._samples[0], self._samples[-1]
        interval = hs1.timestamp - hs0.timestamp

        jiffies = (hs1.pidcpu.user - hs0.pidcpu.user) % (2 ** 32)
        stats['cpuUserVdsmd'] = jiffies / interval
        jiffies = (hs1.pidcpu.sys - hs0.pidcpu.sys) % (2 ** 32)
        stats['cpuSysVdsmd'] = jiffies / interval

        jiffies = (hs1.totcpu.user - hs0.totcpu.user) % (2 ** 32)
        stats['cpuUser'] = jiffies / interval / self._ncpus
        jiffies = (hs1.totcpu.sys - hs0.totcpu.sys) % (2 ** 32)
        stats['cpuSys'] = jiffies / interval / self._ncpus
        stats['cpuIdle'] = max(0.0,
                               100.0 - stats['cpuUser'] - stats['cpuSys'])
        stats['memUsed'] = hs1.memUsed
        stats['anonHugePages'] = hs1.anonHugePages
        stats['cpuLoad'] = hs1.cpuLoad

        stats['diskStats'] = hs1.diskStats
        stats['thpState'] = hs1.thpState

        if self._boot_time():
            stats['bootTime'] = self._boot_time()

        stats['numaNodeMemFree'] = hs1.numaNodeMem.nodesMemSample
        stats['cpuStatistics'] = self._getCpuCoresStats()

        stats['v2vJobs'] = v2v.get_jobs_status()
        return stats