31 lines
600 B
Python
31 lines
600 B
Python
import sys
|
|
import datetime
|
|
import traceback
|
|
|
|
class Logger:
|
|
|
|
def __init__(self,target = sys.stderr,maxlevel = 1):
|
|
self.__target = target
|
|
|
|
def log(self,msg,level = 0,o = None):
|
|
dt = datetime.datetime.today()
|
|
self.__target.write("%s: [%s] %s\n" % (dt,level,msg))
|
|
self.__target.flush()
|
|
|
|
def logException(self,e):
|
|
lines = traceback.format_exception(None,e)
|
|
self.log("Exception occured: {0}".format(e))
|
|
for line in lines:
|
|
self.log(line)
|
|
|
|
|
|
|
|
default_logging = Logger()
|
|
|
|
|
|
def log(msg,level = 0):
|
|
default_logging.log(msg,level)
|
|
|
|
def logException(self,e):
|
|
default_logging.logException(e)
|