report changes
diff --git a/report_templates/report_hdd.html b/report_templates/report_hdd.html
index 5eba9c7..6121727 100644
--- a/report_templates/report_hdd.html
+++ b/report_templates/report_hdd.html
@@ -8,45 +8,70 @@
<body>
<div class="page-header text-center">
- <h2>Performance Report</h2>
+ <h2>Performance Report</h2>
</div>
-<div class="container">
- <div class="row">
- <table style="width: auto;" class="table table-bordered table-striped">
- <tr>
- <td>Test</td>
- <td>Iops/BW</td>
- <td>Test</td>
- <td>Iops/BW</td>
- </tr>
- <tr>
- <td>Rand read 4k direct max IOPS</td>
- <td><div align="right">{direct_iops_r_max} IOPS</div></td>
- <td>Rand write 4k sync IOPS 10ms lat</td>
- <td><div align="right">{rws4k_10ms} IOPS</div></td>
- </tr>
- <tr>
- <td>Rand write 4k direct max IOPS</td>
- <td><div align="right">{direct_iops_w_max} IOPS</div></td>
- <td>Rand write 4k sync IOPS 30ms lat</td>
- <td><div align="right">{rws4k_30ms} IOPS</div></td>
- </tr>
- <tr>
- <td>Direct sequential read</td>
- <td><div align="right">{bw_read_max} MiBps</div></td>
- <td>Rand write 4k sync IOPS 100ms lat</td>
- <td><div align="right">{rws4k_100ms} IOPS</div></td>
- </tr>
- <tr>
- <td>Direct sequential write</td>
- <td><div align="right">{bw_write_max} MiBps</div></td>
- <td></td><td></td>
- </tr>
- </table>
+<div class="container-fluid text-center">
+ <div class="row" style="margin-bottom: 40px">
+ <div class="col-md-12">
+ <center>
+ <table style="width: auto;"
+ class="table table-bordered table-striped">
+ <tr>
+ <td>Test</td>
+ <td>Iops/BW</td>
+ <td>Test</td>
+ <td>Iops/BW</td>
+ </tr>
+ <tr>
+ <td>Rand read 4k direct max IOPS</td>
+ <td>
+ <div align="right">{direct_iops_r_max} IOPS</div>
+ </td>
+ <td>Rand write 4k sync IOPS 10ms lat</td>
+ <td>
+ <div align="right">{rws4k_10ms} IOPS</div>
+ </td>
+ </tr>
+ <tr>
+ <td>Rand write 4k direct max IOPS</td>
+ <td>
+ <div align="right">{direct_iops_w_max} IOPS</div>
+ </td>
+ <td>Rand write 4k sync IOPS 30ms lat</td>
+ <td>
+ <div align="right">{rws4k_30ms} IOPS</div>
+ </td>
+ </tr>
+ <tr>
+ <td>Direct sequential read</td>
+ <td>
+ <div align="right">{bw_read_max} MiBps</div>
+ </td>
+ <td>Rand write 4k sync IOPS 100ms lat</td>
+ <td>
+ <div align="right">{rws4k_100ms} IOPS</div>
+ </td>
+ </tr>
+ <tr>
+ <td>Direct sequential write</td>
+ <td>
+ <div align="right">{bw_write_max} MiBps</div>
+ </td>
+ <td></td>
+ <td></td>
+ </tr>
+ </table>
+ </center>
+ </div>
</div>
- <img src="charts/rand_read_4k.png" />
- <img src="charts/rand_write_4k.png" />
-
+ <div class="row">
+ <div class="col-md-6">
+ <img src="charts/rand_read_4k.png"/>
+ </div>
+ <div class="col-md-6">
+ <img src="charts/rand_write_4k.png"/>
+ </div>
+ </div>
<!--div class="row">
<table style="width: auto;" class="table table-bordered table-striped">
<tr>
diff --git a/wally/charts.py b/wally/charts.py
index 12d735f..828438c 100644
--- a/wally/charts.py
+++ b/wally/charts.py
@@ -67,16 +67,26 @@
[l[0] for l in lines]
bar.dataset(dataset, series=len(bars_data))
- bar.axes.type('xyy')
- bar.axes.label(2, None, label_x)
+
+ axes_type = ""
if scale_x:
bar.axes.label(0, *scale_x)
+ axes_type += "x"
+ if label_x:
+ bar.axes.style(len(axes_type), '000000', '13')
+ bar.axes.label(len(axes_type), label_x)
+ axes_type += "x"
max_value = (max([max(l) for l in dataset[:2]]))
- bar.axes.range(1, 0, max_value)
- bar.axes.style(1, 'N*s*')
- bar.axes.style(2, '000000', '13')
+ bar.axes.range(len(axes_type), 0, max_value)
+ bar.axes.style(len(axes_type), 'N*s*')
+ axes_type += "y"
+
+ if label_y:
+ bar.axes.style(len(axes_type), '000000', '13')
+ bar.axes.label(len(axes_type), None, label_y)
+ axes_type += "y"
bar.scale(*[0, max_value] * 3)
@@ -87,8 +97,6 @@
bar.color(*COLORS)
bar.size(width, height)
- axes_type = "xyy"
-
scale = [0, max_value] * len(bars_dev_top + bars_dev_bottom + bars_data)
if lines:
line_n = 0
diff --git a/wally/report.py b/wally/report.py
index e435a6a..209fa31 100644
--- a/wally/report.py
+++ b/wally/report.py
@@ -102,6 +102,8 @@
for name in info.__dict__:
if not name.startswith('__'):
+ if info.__dict__[name] == "-":
+ continue
info.__dict__[name] = round_3_digit(info.__dict__[name])
report = templ.format(lab_info=lab_description, **info.__dict__)
@@ -140,7 +142,8 @@
latv = [lat / 1000 for lat in latv]
ch = charts.render_vertical_bar(title, legend, [bar_data], [bar_dev_top],
[bar_dev_bottom], file_name=fname,
- scale_x=concurence,
+ scale_x=concurence, label_x="clients",
+ label_y="iops",
lines=[
(latv, "msec", "rr", "lat"),
(iops_or_bw_per_vm, None, None,