【问题标题】:How can i log stdout and stderr outputs using fb-hydra?如何使用 fb-hydra 记录标准输出和标准错误输出?
【发布时间】:2020-06-08 06:29:22
【问题描述】:

我正在尝试将 stdout 和 stderr 记录到文件中。

我在 facebookresearch/hydra github 中找到了 custom.yaml 文件。

# @package _group_
version: 1
formatters:
  simple:
    format: '[%(levelname)s] - %(message)s'
handlers:
  console:
    class: logging.StreamHandler
    formatter: simple
    stream: ext://sys.stdout
root:
  handlers: [console]

disable_existing_loggers: False

我想我可以创建一个自定义的 job_logging 配置文件并通过如下编辑文件来记录 stderr

stream: ext://sys.stderr

但是,我想同时记录 stderr 和 stdout。

我很难弄清楚.. 有谁知道我可以通过更改配置文件来做到这一点吗?

【问题讨论】:

  • 我刚刚了解到添加一个处理 stderr 的处理程序就可以完成这项工作!

标签: python python-logging fb-hydra


【解决方案1】:

Hydra 正在将您的配置(作为原始字典)转发到 logging.config.dictConfig。 与 Hydra 相比,这更多是关于该 API 的问题。

你知道如何在没有 Hydra 的情况下通过logging.config.dictConfig 做到这一点吗?

【讨论】:

  • 感谢您回答问题。我是使用 python 进行日志记录的新手,并且不知道它实际上是在 python 的日志记录模块中处理的。我将尝试了解有关日志记录模块的更多信息。谢谢!
  • 仔细阅读您的问题:您也不应该在 Hydra 中编辑文件。阅读基本教程和自定义日志记录页面 (hydra.cc/docs/next/configure_hydra/logging)。
  • @hyukyu,如果这回答了您的问题,请接受答案。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-12-03
  • 2015-07-01
  • 2014-03-05
相关资源
最近更新 更多