Update of /cvsroot/jtoolkit/jToolkit
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv15405
Modified Files:
errors.py
Log Message:
added a ConsoleErrorHandler that uses stdout/stderr for traces/error messages
Index: errors.py
===================================================================
RCS file: /cvsroot/jtoolkit/jToolkit/errors.py,v
retrieving revision 1.5
retrieving revision 1.6
diff -C2 -d -r1.5 -r1.6
*** errors.py 9 Feb 2004 13:58:29 -0000 1.5
--- errors.py 10 Feb 2004 08:08:55 -0000 1.6
***************
*** 39,43 ****
exc_info = sys.exc_info()
return "\n".join(traceback.format_exception_only(exc_info[0], exc_info[1]))
!
def writelog(self, filename, message):
# Append a log to a field
--- 39,43 ----
exc_info = sys.exc_info()
return "\n".join(traceback.format_exception_only(exc_info[0], exc_info[1]))
!
def writelog(self, filename, message):
# Append a log to a field
***************
*** 72,74 ****
--- 72,100 ----
self.writelog(self.instance.auditfile,msg)
+ class ConsoleErrorHandler(ErrorHandler):
+ def __init__(self, errorfile=sys.stderr, tracefile=sys.stdout):
+ self.errorfile = errorfile
+ self.tracefile = tracefile
+
+ def writelog(self, f, message):
+ f.write(time.strftime('%Y-%m-%d %H:%M:%S')+': ')
+ if type(message) == unicode:
+ f.write(message.encode('iso8859'))
+ else:
+ f.write(message)
+ f.write('\n')
+ f.flush()
+
+ def logerror(self, message):
+ self.writelog(self.errorfile, message)
+
+ def logtrace(self, message):
+ if self.tracefile is not None:
+ self.writelog(self.tracefile, message)
+
+ def logtracewithtime(self, msg):
+ t = time.time()
+ ms = int((t - int(t))*1000.0)
+ if self.tracefile is not None:
+ self.writelog(self.tracefile, ".%03d: %s" % (ms, msg))
|