解決辦法如下:
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"
多么痛的領悟,困擾了這么久的問題其實就是一個參數(shù)配置錯了。
fileMode:表示日志文件的打開方式。w-直接寫,使用這個配置當系統(tǒng)重啟的時候日志會清空,一個進程打開后其他進程是無法使用的;a-尾部追加,大家都可以打開往文件結(jié)尾進行追加寫入。
本人主語言是java,轉(zhuǎn)到python后日志這塊踩了幾個坑。再說說另外一個坑,就是異常堆棧的打印問題,在java中l(wèi)ogger是可以使用error直接打印出來的。在python中error跟其他日志記錄方法沒太大差別,是無法打印異常堆棧的,打印堆棧請使用logger.exception("異常說明", e)
。