summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorScott Moser <smoser@ubuntu.com>2013-09-08 09:33:53 -0400
committerScott Moser <smoser@ubuntu.com>2013-09-08 09:33:53 -0400
commit50e90192bffb3f0ce437ec9abcca89cc56649dff (patch)
tree39a80aee79dd289262457e579b57a5502e9f81f6
parent0843952235072079bb66bd2fe9e96057df11c228 (diff)
parent0575c837a6ca6c2a6d554177d9e0540fd70a7843 (diff)
downloadvyos-cloud-init-50e90192bffb3f0ce437ec9abcca89cc56649dff.tar.gz
vyos-cloud-init-50e90192bffb3f0ce437ec9abcca89cc56649dff.zip
log_time: Ensure that udelta is valid before including it as a float.
It appears that udelta could have been left undefined or left defined as a string "N/A" and then put threw a float formatter previously. Fix that by ensure its set to a default and put strong checking to make sure it is a float before using float formatting.
-rw-r--r--cloudinit/util.py8
1 files changed, 6 insertions, 2 deletions
diff --git a/cloudinit/util.py b/cloudinit/util.py
index 4a74ba57..5032cc47 100644
--- a/cloudinit/util.py
+++ b/cloudinit/util.py
@@ -1791,15 +1791,19 @@ def log_time(logfunc, msg, func, args=None, kwargs=None, get_uptime=False):
ret = func(*args, **kwargs)
finally:
delta = time.time() - start
+ udelta = None
if ustart is not None:
try:
udelta = float(uptime()) - ustart
except ValueError:
- udelta = "N/A"
+ pass
tmsg = " took %0.3f seconds" % delta
if get_uptime:
- tmsg += "(%0.2f)" % udelta
+ if isinstance(udelta, (float)):
+ tmsg += " (%0.2f)" % udelta
+ else:
+ tmsg += " (N/A)"
try:
logfunc(msg + tmsg)
except: