Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python logzero和stdout_Python_Python Logging - Fatal编程技术网

Python logzero和stdout

Python logzero和stdout,python,python-logging,Python,Python Logging,logzero将所有条目日志发送到一个文件,但也发送到stdout。有没有办法避免污染污水 我想用Python来做这件事。我不想调用脚本并将其输出重定向到/dev/null,因为如果这样做,我将无法将有用的消息打印到stdout 编辑:@blues指出,logzero向stderr发送行,而不是stdout。logzero实际上没有向stdout发送任何日志,而是发送到stderr。因此,您可以将它们重定向到/dev/null,而不会影响常规输出 但logzero还有一个根本不使用此处理程序的问

logzero将所有条目日志发送到一个文件,但也发送到stdout。有没有办法避免污染污水

我想用Python来做这件事。我不想调用脚本并将其输出重定向到/dev/null,因为如果这样做,我将无法将有用的消息打印到stdout


编辑:@blues指出,logzero向stderr发送行,而不是stdout。

logzero实际上没有向stdout发送任何日志,而是发送到stderr。因此,您可以将它们重定向到/dev/null,而不会影响常规输出

但logzero还有一个根本不使用此处理程序的问题:

import logzero

logger = logzero.setup_default_logger(disableStderrLogger=True)
logzero.logfile('zero.log')
logger.info('appears in file but not on terminal')
但是,我建议只使用本机python日志模块,因为只设置文件日志实际上更容易:

import logging

logging.basicConfig(filename='logging.log', level='DEBUG')
logging.info('will be logged to file')