pyspider的logging-config设置问题

发布于 2022-09-06 08:28:58 字数 1046 浏览 13 评论 0

pyspider中可以设置自定义的logging config,默认给的配置都是输出到screen的。这时在自己的项目脚本里(在最开始设置logger = logging.getLogger())的logger.info()是可以输出的。

但是当自己定义成文件loghandler时,项目脚本的却不写入日志文件了。

log conf设置

[loggers]
keys=root,scheduler,fetcher,processor,webui,bench,werkzeug,result_worker

[logger_root]
level=INFO
handlers=file_root

[logger_scheduler]
level=INFO
handlers=file_scheduler
qualname=scheduler
propagate=0
...
[handlers]
keys=screen,file_scheduler,file_fetcher,file_processor,file_webui,file_result_worker,file_root
...
[handler_file_scheduler]
class=logging.handlers.TimedRotatingFileHandler
formatter=file_formatter
level=INFO
args=('log/scheduler.log', 'midnight', 1, 15)
...
[formatters]
keys=pretty,file_formatter

[formatter_pretty]
class=pyspider.libs.log.LogFormatter

[formatter_file_formatter]
class=logging.Formatter
format=%(asctime)s [%(thread)d] [%(filename)s:%(lineno)d] %(levelname)s: %(message)s

但是在分别启动时resultworker,process,fetcher等后,项目里的日志输出却没有出现在root中或是其他的日志文件中。

如果想输出自己项目里的日志到文件,应该如何设置呢?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文