【问题标题】:How to log request channel into a log file?如何将请求通道记录到日志文件中?
【发布时间】:2021-08-13 10:11:09
【问题描述】:

我目前正在开发环境中运行 Symfony 5 项目。

我想将请求日志(如10:01:39 request.INFO Matched route "login_route")输出到文件中。

我有以下config/packages/dev/monolog.yaml 文件:

monolog:
    handlers:
        main:
            type: stream
            path: "%kernel.logs_dir%/%kernel.environment%.log"
            level: debug
            channels: [event]

使用上面的 YAML,当我执行 bin/console cache:clear 时,它会正确登录到文件 /tmp/dev-logs/dev.log

但是,当我在应用程序上执行请求时,它不会记录任何内容,无论我设置 channels: [request]channels: ~ 还是根本没有设置 channel 参数。

如何编辑 monolog.yaml 文件的设置以记录请求通道日志?

【问题讨论】:

    标签: symfony logging monolog


    【解决方案1】:

    我找到了答案!这非常适合我的配置。

    其实我有两个 Docker 容器(都将项目目录挂载为一个卷)用于开发:

    • 一个用于代码编辑(带有 linter、语法检查器、特定 vim 配置...等...)
    • 一种使用 PHP-FPM 通过 HTTP 访问应用程序(我在应用程序上发出 HTTP 请求时使用的一种)

    所以,当我从我用于开发的第一个容器中执行bin/console cache:clear 时,它会登录到第一个容器的/tmp/dev-logs/dev.log 文件;但是当我执行 HTTP 请求时,它会登录到第二个容器的 /tmp/dev-logs/dev.log 文件;

    我只在第一个容器文件登录到第二个容器文件时才检查它。所以,我只是没有检查正确的文件。

    一切正常。 :)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-03-22
      • 1970-01-01
      • 2017-01-29
      • 2019-01-11
      • 1970-01-01
      • 1970-01-01
      • 2013-12-21
      相关资源
      最近更新 更多