Home | History | Annotate | Download | only in vmstat
      1 """
      2 Runs vmstat X where X is the interval in seconds
      3 
      4 Defaults options:
      5 job.profilers.add('vmstat', interval=1)
      6 """
      7 import time, os, subprocess
      8 from autotest_lib.client.bin import profiler
      9 
     10 
     11 class vmstat(profiler.profiler):
     12     version = 1
     13 
     14     def initialize(self, interval = 1):
     15         self.interval = interval
     16 
     17 
     18     def start(self, test):
     19         cmd = "/usr/bin/vmstat %d" % self.interval
     20         logfile = open(os.path.join(test.profdir, "vmstat"), 'w')
     21         p = subprocess.Popen(cmd, shell=True, stdout=logfile, \
     22                                         stderr=subprocess.STDOUT)
     23         self.pid = p.pid
     24 
     25 
     26     def stop(self, test):
     27         os.kill(self.pid, 15)
     28 
     29 
     30     def report(self, test):
     31         return None
     32