python仅记录到文件

fbe*_*nce 6 python logging

我有一个cronjob运行一个我添加了python脚本的脚本logging,但是由于它是日常工作,所以每天收到有关其功能的电子邮件确实很烦人,但是我似乎找不到设置,这会使它仅记录日志进入日志文件。

#!/usr/bin/python
import logging, logging.handlers
LOGFILENAME = "log.log" 
logging.basicConfig()
log = logging.getLogger("nameoflog")
log.setLevel(logging.DEBUG) 
handler = logging.handlers.WatchedFileHandler(LOGFILENAME)
handler.setLevel(logging.DEBUG)
handler.setFormatter(logging.Formatter("%(asctime)-15s %(levelname)-8s %(name)s %(message)s")) 
log.addHandler(handler)
log.info("something happening")
Run Code Online (Sandbox Code Playgroud)

如何logging仅写入文件而不写入文件and STDOUT

tde*_*ney 6

问题是您调用logging.basicConfig()which 将日志记录设置为stdout. basicConfig只是当您不想进行更详细的日志记录调用时使用的辅助方法。由于您自己设置方法,因此不应调用basicConfig.