我在服务器上编写了一个Flask应用程序。 我使用以下方式运行它:
export FLASK_APP=mypyhthonfile
nohup flask run --host=host-ip --port=port-number
这个Python脚本有类似于以下的日志记录语句:
Logger.info("this is a log")
日志记录语句既在记录器文件中打印,也在 nohup.out 中打印。
有什么方法可以避免在 nohup.out 中打印日志记录语句吗?
我在服务器上编写了一个Flask应用程序。 我使用以下方式运行它:
export FLASK_APP=mypyhthonfile
nohup flask run --host=host-ip --port=port-number
这个Python脚本有类似于以下的日志记录语句:
Logger.info("this is a log")
日志记录语句既在记录器文件中打印,也在 nohup.out 中打印。
有什么方法可以避免在 nohup.out 中打印日志记录语句吗?
你需要将日志记录器设置在比根日志记录器更低的级别:
在这个例子中,我将根日志记录器设置为 logging.WARNING (30) 级别,而我的 test_logger 设置为 logging.DEBUG (10) 级别,因此根日志记录器(nohup 正在监听的)不会打印任何东西(只有你打印的字符串或者高于 30 的日志级别),而 example.log 中有一些日志级别比 logger 的级别更高。
import logging
logging.basicConfig(filename='example.log', level=logging.WARNING)
test_logger = logging.getLogger('test')
test_logger.setLevel(level=logging.DEBUG)
nohup.out
和python 日志文件
中;而它应该只存储在 python 日志文件中。 - Akash Goyal