我正在使用导入日志记录来保存对我的散景服务器的更改,并且我想将其保存到扩展名为.log的文件中,但是当我运行散景服务器时,文件未创建且无法保存操作.log文件。 我在下面写了一部分代码。
可能是因为我在代码或散景服务器中犯了错误,它是否与日志记录无关?
import logging
LOG_FORMAT = "%(levelname)s %(asctime)s - %(message)s"
logging.basicConfig(filename = "test.log",
level = logging.DEBUG,
format = LOG_FORMAT,
filemode="w")
logger = logging.getLogger()
答案 0 :(得分:0)
当您使用bokeh serve %some_python_file%
时,Bokeh服务器会立即启动,但只有在您实际打开指向您填写该代码的Bokeh文档的URL时才会执行您的代码。
bokeh serve
也使用logging.basicConfig
配置日志记录,再次调用此函数不会覆盖任何内容 - 这就是logging.basicConfig
的工作方式。
您应该直接创建和配置自己的记录器,而不是直接使用logging
:
LOG_FORMAT = "%(levelname)s %(asctime)s - %(message)s"
file_handler = logging.FileHandler(filename='test.log', mode='w')
file_handler.setFormatter(logging.Formatter(LOG_FORMAT))
logger = logging.getLogger(__name__)
logger.addHandler(file_handler)
logger.setLevel(logging.DEBUG)
logger.info('Hello there')