From a2f4fe7de51cb580ca587d155f01ad569edd36ae Mon Sep 17 00:00:00 2001 From: =?utf8?q?Karl=20Hasselstr=C3=B6m?= Date: Wed, 23 Jul 2008 23:29:10 +0200 Subject: [PATCH] Log subprocess calls during performance testing MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Log each command's subprocess calls to a separate file. Signed-off-by: Karl Hasselström --- perf/perftest.py | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/perf/perftest.py b/perf/perftest.py index 7072772..e5ed04b 100644 --- a/perf/perftest.py +++ b/perf/perftest.py @@ -1,4 +1,4 @@ -import datetime, subprocess, sys +import datetime, os, os.path, subprocess, sys def duration(t1, t2): d = t2 - t1 @@ -8,8 +8,16 @@ class Run(object): def __init__(self): self.__cwd = None self.__log = [] + def __logfile(self, cmd): + fn = os.path.join(os.getcwd(), '%04d.log' % len(self.__log)) + f = open(fn, 'w') + f.write(' '.join(cmd) + '\n' + '-'*70 + '\n\n') + f.close() + return fn def __call__(self, *cmd, **args): - kwargs = { 'cwd': self.__cwd } + env = dict(os.environ) + env['STGIT_SUBPROCESS_LOG'] = 'profile:' + self.__logfile(cmd) + kwargs = { 'cwd': self.__cwd, 'env': env } if args.get('capture_stdout', False): kwargs['stdout'] = subprocess.PIPE start = datetime.datetime.now() -- 2.11.0