def init_logging(args, conf):
'''Initialize the logging system. Uses argdir and id from args, adds 'trackfile' to conf
as a file object to which track data should be written.'''
# setup log files
filetimestamp = time.strftime("%Y%m%d-%H%M%S")
if args.id:
name = "%s-%s" % (filetimestamp, args.id)
else:
name = filetimestamp
conf['name'] = name
# ensure log and image directories exist
utils.mkdir(config.TRACKDIR, config.REMOTE_USER)
debugframe_dir = "%s/%s" % (config.DBGFRAMEDIR, name)
# Make debugframedir world-writable so rsync can delete it.
oldmask = os.umask(0)
utils.mkdir(debugframe_dir, config.REMOTE_USER)
os.umask(oldmask)
conf['debugframe_dir'] = debugframe_dir
trackfilename = "%s/%s-track.csv" % (config.TRACKDIR, name)
logfilename = "%s/%s.log" % (config.TRACKDIR, name)
# Setup the ROOT level logger to send to a log file and console both
logger = logging.getLogger()
logger.setLevel(logging.INFO)
fh = logging.FileHandler(filename=logfilename)
fh.setFormatter(
logging.Formatter(fmt="%(asctime)s [%(levelname)s] %(message)s"))
sh = logging.StreamHandler()
sh.setFormatter(
logging.Formatter(fmt="[%(levelname)s] %(message)s"))
logger.addHandler(fh)
logger.addHandler(sh)
logging.info("Logging started.")
conf['trackfile'] = open(trackfilename, 'w')
评论列表
文章目录