diff options
author | Lars Wirzenius <liw@liw.fi> | 2016-03-13 16:57:48 +0200 |
---|---|---|
committer | Lars Wirzenius <liw@liw.fi> | 2016-03-13 16:57:48 +0200 |
commit | 001b4d784045633e042dd46c20c7b3c642a2db9f (patch) | |
tree | 18307b3bd92fd025933b270e744f63800f9dab1a | |
parent | dd9c2d756ddf10f416774f4c93177648b8ee7121 (diff) | |
download | obnam-benchmarks-001b4d784045633e042dd46c20c7b3c642a2db9f.tar.gz |
Write out log files during HTML generation
-rw-r--r-- | obbenchlib/htmlgen.py | 23 |
1 files changed, 22 insertions, 1 deletions
diff --git a/obbenchlib/htmlgen.py b/obbenchlib/htmlgen.py index 1662efc..d5b3d2b 100644 --- a/obbenchlib/htmlgen.py +++ b/obbenchlib/htmlgen.py @@ -42,7 +42,13 @@ class HtmlGenerator(object): extensions=['jinja2.ext.autoescape']) self.create_html_dir() - page_classes = [FrontPage, BenchmarkPage, ProfileData, CssFile] + page_classes = [ + FrontPage, + BenchmarkPage, + ProfileData, + LogFile, + CssFile, + ] for page_class in page_classes: page = page_class() page.env = env @@ -226,6 +232,21 @@ class ProfileData(HtmlPage): return filename, step[operation]['profile-text'] +class LogFile(HtmlPage): + + def generate(self): + for result in self.results: + for i, step in enumerate(result['steps']): + for operation in step: + if 'log' in step[operation]: + yield self.generate_log_file( + result, step, i, operation) + + def generate_log_file(self, result, step, i, operation): + filename = '{}_{}.log'.format(result['result_id'], i) + return filename, step[operation]['log'] + + class CssFile(object): def generate(self): |