下面小编就为大家分享一篇大蟒实现原木日志的示例代码,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
源代码:
#编码=utf-8
导入日志记录
导入操作系统
导入时间
LEVELS={'debug ':日志记录。调试,\
信息':日志记录。信息,\
'警告:日志记录。警告,\
'错误:日志记录。错误,\
“关键”:记录。关键,}
logger=logging.getLogger()
级别='默认'
定义创建文件(文件名):
路径=文件名[0:文件名。rfind('/')]
如果不是os.path.isdir(路径):
os.makedirs(路径)
如果不是os.path.isfile(文件名):
#创建并打开一个新文件
fd=打开(文件名,模式='w ',编码='utf-8 ')
fd.close()
类别我的日志:
log _ filename=' E:/quality/it/pyrequest-master/log/itest。“日志”
err _ filename=' E:/quality/it/pyre quest-master/log/err。“日志”
日期格式='%Y-%m-%d %H:%M:%S '
伐木工。设置级别(级别。获取(级别,日志记录.NOTSET))
创建文件(日志文件名)
创建文件(错误文件名)
#注意文件内容写入时编码格式指定
处理程序=日志记录FileHandler(日志文件名,编码='utf-8 ')
错误处理程序=日志记录FileHandler(错误文件名,编码='utf-8 ')
@静态方法
#静态方法
定义调试(日志消息):
setHandler('debug ')
伐木工。调试('[DEBUG ' getCurrentTime()']' log _ message)
removerhandler(“调试")
@静态方法
定义信息(日志消息):
setHandler('info ')
伐木工。信息('[INFO ' getCurrentTime()']' log _ message)
removerhandler(“信息")
@静态方法
定义警告(日志消息):
setHandler(“警告")
伐木工。警告('[WARNING ' getCurrentTime()']'日志消息
removerhandler(“警告")
@静态方法
定义错误(日志消息):
setHandler('error ')
伐木工。错误('[ERROR ' getCurrentTime()']' log _ message)
removerhandler(“错误")
@静态方法
定义关键(日志消息):
setHandler('critical ')
伐木工。关键('[关键' getCurrentTime()']'日志消息)
removerhandler(“关键")
#记录器可以看做是一个记录日志的人,对于记录的每个日志,他需要有一套规则,比如记录的格式(格式化程序),
# 等级(级别)等等,这个规则就是处理程序。使用logger.addHandler(处理程序)添加多个规则,
# 就可以让一个记录器记录多个日志。
def setHandler(级别):
如果level=='error ':
伐木工。addhandler(我的日志。错误处理程序)
#处理程序=日志记录。文件处理程序(日志文件名)
#把记录器添加上处理者
伐木工。addhandler(我的日志。处理程序)
极好的移除手柄(水平):
如果level=='error ':
伐木工。删除处理程序(我的日志。错误处理程序)
伐木工。删除处理程序(我的日志。处理程序)
def getCurrentTime():
返回时间。strftime(我的日志。日期格式,time.localtime(time.time()))
if __name__=='__main__ ':
MyLog.debug("这是调试消息")
MyLog.info("这是信息消息")
MyLog.warning("这是警告消息")
MyLog.error("这是错误消息")
MyLog.critical("这是重要消息")
以上这篇大蟒实现原木日志的示例代码就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。