diff options
author | drebs <drebs@leap.se> | 2014-03-11 16:14:39 -0300 |
---|---|---|
committer | drebs <drebs@leap.se> | 2014-03-12 16:21:02 -0300 |
commit | 3337f48c810df45aac7d3009b49b4b2a34ef019d (patch) | |
tree | e6047243db5a1630d16849b0449994d0930091c5 /scripts/backends_cpu_usage/log_cpu_usage.py | |
parent | 94ec89384abeba52d660addf3528b11a9aa5a8b0 (diff) |
Add scripts to measure backend cpu usage.
Diffstat (limited to 'scripts/backends_cpu_usage/log_cpu_usage.py')
-rwxr-xr-x | scripts/backends_cpu_usage/log_cpu_usage.py | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/scripts/backends_cpu_usage/log_cpu_usage.py b/scripts/backends_cpu_usage/log_cpu_usage.py new file mode 100755 index 00000000..2674e1ff --- /dev/null +++ b/scripts/backends_cpu_usage/log_cpu_usage.py @@ -0,0 +1,46 @@ +#!/usr/bin/python + + +# Get the CPU usage and print to file. + + +import psutil +import time +import argparse +import os +import threading + + +class LogCpuUsage(threading.Thread): + + def __init__(self, fname): + threading.Thread.__init__(self) + self._stopped = True + self._fname = fname + + def run(self): + self._stopped = False + with open(self._fname, 'w') as f: + start = time.time() + while self._stopped is False: + now = time.time() + f.write("%f %f\n" % ((now - start), psutil.cpu_percent())) + time.sleep(0.01) + + def stop(self): + self._stopped = True + + +if __name__ == '__main__': + parser = argparse.ArgumentParser() + parser.add_argument('file', help='where to save output') + args = parser.parse_args() + + if os.path.isfile(args.file): + replace = raw_input('File %s exists, replace it (y/N)? ' % args.file) + if replace.lower() != 'y': + print 'Bailing out.' + exit(1) + + log_cpu = LogCpuUsage(args.file) + log_cpu.run() |