Source code for autotest.client.profilers.vmstat.vmstat

"""
Runs vmstat X where X is the interval in seconds

Defaults options:
job.profilers.add('vmstat', interval=1)
"""
import os
import subprocess

from autotest.client import profiler


[docs]class vmstat(profiler.profiler): version = 1
[docs] def initialize(self, interval=1, **dargs): self.interval = interval
[docs] def start(self, test): cmd = "/usr/bin/vmstat %d" % self.interval logfile = open(os.path.join(test.profdir, "vmstat"), 'w') p = subprocess.Popen(cmd, shell=True, stdout=logfile, stderr=subprocess.STDOUT) self.pid = p.pid
[docs] def stop(self, test): os.kill(self.pid, 15)
[docs] def report(self, test): return None