[英]python logging debug to file errors to stdout
python日志记录模块中有什么方法可以将信息和错误发送到stdout并调试到文件。 脚本中的某些命令会产生很长的输出,我不想将其发送到stdout。
我正在使用以下日志记录功能,该功能会将日志写入文件和标准输出
def mylog(release_num, logdir='/tmp'):
applog = logging.getLogger()
applog.setLevel(logging.DEBUG)
formatter = logging.Formatter("%(asctime)s %(levelname)s %(message)s", "%b %d %Y %H:%M:%S")
logfile = "{}/{}.log".format(logdir, release_num)
if not os.path.exists(logdir):
os.makedirs(logdir)
fileHandler = logging.FileHandler(logfile, 'ab')
fileHandler.setLevel(logging.DEBUG)
fileHandler.setFormatter(formatter)
applog.addHandler(fileHandler)
cformat = logging.Formatter("[%(levelname)8s] : %(message)s")
consoleHandler = logging.StreamHandler(sys.stdout)
consoleHandler.setFormatter(cformat)
log.addHandler(consoleHandler)
return applog
您需要将consoleHandler
日志级别设置为logging.INFO
以通过处理程序记录级别信息或更高级别的消息:
consoleHandler.setLevel(logging.INFO)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.