aboutsummaryrefslogtreecommitdiffstats
path: root/libmproxy
diff options
context:
space:
mode:
Diffstat (limited to 'libmproxy')
-rw-r--r--libmproxy/console/common.py14
-rw-r--r--libmproxy/utils.py12
2 files changed, 18 insertions, 8 deletions
diff --git a/libmproxy/console/common.py b/libmproxy/console/common.py
index a2cfd57b..fa21c93e 100644
--- a/libmproxy/console/common.py
+++ b/libmproxy/console/common.py
@@ -162,7 +162,7 @@ def raw_format_flow(f, focus, extended, padding):
if f["resp_ctype"]:
resp.append(fcol(f["resp_ctype"], rc))
resp.append(fcol(f["resp_clen"], rc))
- resp.append(fcol(f["resp_rate"], rc))
+ resp.append(fcol(f["roundtrip"], rc))
elif f["err_msg"]:
resp.append(fcol(SYMBOL_RETURN, "error"))
@@ -345,19 +345,17 @@ def format_flow(f, focus, extended=False, hostheader=False, padding=2):
contentdesc = "[content missing]"
else:
contentdesc = "[no content]"
-
- if f.response.timestamp_end:
- delta = f.response.timestamp_end - f.response.timestamp_start
- else:
- delta = 0
+ duration = 0
+ if f.response.timestamp_end and f.request.timestamp_start:
+ duration = f.response.timestamp_end - f.request.timestamp_start
size = f.response.size()
- rate = utils.pretty_size(size / ( delta if delta > 0 else 1 ) )
+ roundtrip = utils.pretty_duration(duration)
d.update(dict(
resp_code = f.response.code,
resp_is_replay = f.response.is_replay,
resp_clen = contentdesc,
- resp_rate = "{0}/s".format(rate),
+ roundtrip = roundtrip,
))
t = f.response.headers["content-type"]
if t:
diff --git a/libmproxy/utils.py b/libmproxy/utils.py
index 33af035f..76e99c34 100644
--- a/libmproxy/utils.py
+++ b/libmproxy/utils.py
@@ -79,6 +79,18 @@ def pretty_size(size):
x = int(x)
return str(x) + suf
+def pretty_duration(secs):
+ formatters = [
+ (100, "{:.0f}s"),
+ (10, "{:2.1f}s"),
+ (1, "{:1.2f}s"),
+ ]
+
+ for limit, formatter in formatters:
+ if secs >= limit:
+ return formatter.format(secs)
+ #less than 1 sec
+ return "{:.0f}ms".format(secs*1000)
class Data:
def __init__(self, name):