Beispiel #1
0
    def test_v2v_error(self):

        class FakeProc(object):
            def __init__(self):
                self.returncode = 1
                self.stdout = io.FileIO('/dev/null')

            def kill(self):
                return

            def wait(self):
                return

        class FakeV2VCommand(object):
            @contextmanager
            def execute(self):
                yield FakeProc()

        job_id = '00000000-0000-0000-0000-000000000000'
        job = v2v.ImportVm(job_id, FakeV2VCommand())
        v2v._add_job(job_id, job)
        job.start()
        job.wait()
        status = v2v.get_jobs_status()
        assert status[job_id] == {
            'status': v2v.STATUS.FAILED,
            'description': "Job '%s' process failed exit-code: 1" % job_id,
            'progress': 0,
        }
Beispiel #2
0
def produce(first_sample, last_sample):
    stats = _empty_stats()

    if first_sample is None:
        return stats

    interval = last_sample.timestamp - first_sample.timestamp

    # Prevents division by 0 and negative interval
    if interval < SMALLEST_INTERVAL:
        logging.warning('Sampling interval %f is too small (expected %f).',
                        interval,
                        config.getint('vars', 'host_sample_stats_interval'))
        return stats

    stats.update(get_interfaces_stats())

    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 / last_sample.ncpus
    jiffies = (
        last_sample.totcpu.sys - first_sample.totcpu.sys
    ) % JIFFIES_BOUND
    stats['cpuSys'] = jiffies / interval / last_sample.ncpus
    stats['cpuIdle'] = max(0.0,
                           100.0 - stats['cpuUser'] - stats['cpuSys'])
    stats['memUsed'] = last_sample.memUsed
    stats['hugepages'] = last_sample.hugepages
    stats['anonHugePages'] = last_sample.anonHugePages
    stats['cpuLoad'] = last_sample.cpuLoad

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

    if _boot_time():
        stats['bootTime'] = _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
Beispiel #3
0
def produce(first_sample, last_sample):
    stats = _empty_stats()

    if first_sample is None:
        return stats

    interval = last_sample.timestamp - first_sample.timestamp

    # Prevents division by 0 and negative interval
    if interval < SMALLEST_INTERVAL:
        logging.warning('Sampling interval %f is too small (expected %f).',
                        interval,
                        config.getint('vars', 'host_sample_stats_interval'))
        return stats

    stats.update(get_interfaces_stats())

    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 / last_sample.ncpus
    jiffies = (
        last_sample.totcpu.sys - first_sample.totcpu.sys
    ) % JIFFIES_BOUND
    stats['cpuSys'] = jiffies / interval / last_sample.ncpus
    stats['cpuIdle'] = max(0.0,
                           100.0 - stats['cpuUser'] - stats['cpuSys'])
    stats['memUsed'] = last_sample.memUsed
    stats['hugepages'] = last_sample.hugepages
    stats['anonHugePages'] = last_sample.anonHugePages
    stats['cpuLoad'] = last_sample.cpuLoad

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

    if _boot_time():
        stats['bootTime'] = _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
Beispiel #4
0
def produce(first_sample, last_sample):
    stats = _empty_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 / last_sample.ncpus
    jiffies = (
        last_sample.totcpu.sys - first_sample.totcpu.sys
    ) % JIFFIES_BOUND
    stats['cpuSys'] = jiffies / interval / last_sample.ncpus
    stats['cpuIdle'] = max(0.0,
                           100.0 - stats['cpuUser'] - stats['cpuSys'])
    stats['memUsed'] = last_sample.memUsed
    stats['hugepages'] = last_sample.hugepages
    stats['anonHugePages'] = last_sample.anonHugePages
    stats['cpuLoad'] = last_sample.cpuLoad

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

    if _boot_time():
        stats['bootTime'] = _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
Beispiel #5
0
def produce(first_sample, last_sample):
    stats = _empty_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 / last_sample.ncpus
    jiffies = (last_sample.totcpu.sys -
               first_sample.totcpu.sys) % JIFFIES_BOUND
    stats['cpuSys'] = jiffies / interval / last_sample.ncpus
    stats['cpuIdle'] = max(0.0, 100.0 - stats['cpuUser'] - stats['cpuSys'])
    stats['memUsed'] = last_sample.memUsed
    stats['hugepages'] = last_sample.hugepages
    stats['anonHugePages'] = last_sample.anonHugePages
    stats['cpuLoad'] = last_sample.cpuLoad

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

    if _boot_time():
        stats['bootTime'] = _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