logger打印日志,log输出日志
在大蟒中代替记录的日志系统。
但是,比以前的记录更难理解。
先前打印在屏幕上的代码和保存在日志文件中的代码:
#!/usr/神勇的大厦/env python 3-编码:utf-8-fromlogbookimportlogger,StreamHandler,timedrotatingfilehanglehandler(log _ dir=OS。路径。加入)ifnotos。路径。exists(log _ dir):OS。make dirs)log _ dir timedrotaaaaaaction
在初始化时,必须老师成记录器实例。
user_log=logger("user_log "))))))))))))。
如果需要打印在屏幕上,请生成要打印在屏幕上的句柄。
user _ STD _ handler=user _ STD _ handler=colorizedstderrhandler(bubble=true)
然后,将此句柄设置为日志格式:
用户_标准_处理程序。formatter=用户处理程序日志格式化程序
要启用此设置,请单击,
只需声明用户日志的句柄。
user_log.handlers=[]
然后加上那个就可以了
user _ log.handlers.append用户标准处理程序)
同样,要使日志也支持打印到文件,请再次执行上述步骤。
user _ file _ handler=timedrotatingfilehandler(
OS.path.join(OS.path.join)、(log)、(s.log)、(test_log)、(date_format=)、y%m%d)、bubbllog
用户文件处理程序。formatter=用户处理程序日志格式化程序
user _ log。经手人。append(用户文件处理程序).
用户处理程序日志格式化程序是一个日志格式函数,返回打印日志的显示方式。
整体代码如下。
#!/usr/神勇的大厦/env python3# - *编码:utf-8-#文件名:记录器。pyimportsimportlogbookfromlogbookimportlogger timedrotatingfilehandlerfromclogbook。morimportcoloured sed“% y-% m-% d % h 3360% m 3360记录,处理程序(3360 log=[{ dt }][{ level }][{ filename }][{函数名}][{行号}]{消息} .formar ) #日志等级文件#文件名func_name=record.func_name,#函数名行号=记录号日志内容(返回日志号)打印到屏幕句柄user _ STD _ handler=colorizedstderrhandler(bubble=true)user _ STD _ handler。格式化程序=的主项目.存在)log _ dir):OS。makedirs)log _ dir)#的文件句柄user _ file _ handler=timedrotatingfilehandler(oom) % s . log % test _ log )打印bubble=true(user _ file _ handler。格式化程序=用户处理程序日志格式化程序)用户代码记录器日志65 3360日志。set _ datetime _ format(本地)user _ log。handlers=[]user _ log。经手人。appen en/usr/神勇的大厦/evn python 3-*-编码:utf-8-#文件名:test _ lo oger。pyimportsofsfromlogergimportustususe[2017-08-2619336010336010.226902][info][test _ logger。py][module][8]mytest。