解决办法如下:
logging.basicConfig(level=logging.INFO,
format='[%(asctime)s] p%(process)s {%(name)-12s:%(lineno)d} %(levelname)-8s - %(message)s',
datefmt='%m-%d %H:%M',
filename='taobao.log',
filemode='a') #注意此处用"a"而不是"w"
多么痛的领悟,困扰了这么久的问题其实就是一个参数配置错了。
fileMode:表示日志文件的打开方式。w-直接写,使用这个配置当系统重启的时候日志会清空,一个进程打开后其他进程是无法使用的;a-尾部追加,大家都可以打开往文件结尾进行追加写入。
本人主语言是java,转到python后日志这块踩了几个坑。再说说另外一个坑,就是异常堆栈的打印问题,在java中logger是可以使用error直接打印出来的。在python中error跟其他日志记录方法没太大差别,是无法打印异常堆栈的,打印堆栈请使用logger.exception("异常说明", e)
。
网友评论