def log_exc(msg="",name=None):
"""Log the traceback resulting from an exception."""
- if name:
+ if name:
log("%s: EXCEPTION caught <%s> \n %s" %(name, msg, traceback.format_exc()))
else:
log("EXCEPTION caught <%s> \n %s" %(msg, traceback.format_exc()))
pp=pprint.PrettyPrinter(stream=f,indent=2)
pp.pprint(data)
f.close()
- log("logger:.log_data_in_file Owerwrote %s"%file)
+ verbose("logger:.log_data_in_file Owerwrote %s"%file)
except:
log_exc('logger.log_data_in_file failed - file=%s - message=%r'%(file,message))
log_data_in_file (db, LOG_DATABASE, "raw database")
#################### child processes
-# avoid waiting until the process returns;
+# avoid waiting until the process returns;
# that makes debugging of hanging children hard
class Buffer:
def __init__ (self,message='log_call: '):
self.buffer=''
self.message=message
-
+
def add (self,c):
self.buffer += c
if c=='\n': self.flush()
verbose("log_call: poll=%r s" % poll)
trigger=time.time()+timeout
result = False
- try:
- child = subprocess.Popen(command, bufsize=1,
+ try:
+ child = subprocess.Popen(command, bufsize=1,
stdout=subprocess.PIPE, stderr=subprocess.STDOUT, close_fds=True)
buffer = Buffer()
while True:
if returncode != None:
buffer.flush()
# child is done and return 0
- if returncode == 0:
+ if returncode == 0:
log("log_call:end command (%s) completed" % message)
result=True
break