gpt4 book ai didi

php - Monolog 没有写入正确的日志文件

转载 作者:行者123 更新时间:2023-12-04 17:35:47 24 4
gpt4 key购买 nike

我在 Symfony 4 上,我想为许多日志类型创建一个专用 channel :这是我对 channel 和处理程序的配置:

 monolog:
channels: ["channel1", "channel2"]

handlers:
channel1:
level: debug
type: stream
path: "%kernel.logs_dir%/channel1.log"
channels: ["channel"]

channel2:
level: debug
type: stream
path: "%kernel.logs_dir%/channel2.log"
channels: ["channel2"]

然后,在我写日志的服务中,我注入(inject)了自定义

 services:
_defaults:
autowire: true
autoconfigure: true
Infrastructure\Logger\Channel1Logger:
arguments:
- '@monolog.logger.channel1'

Infrastructure\Logger\Channel2Logger:
arguments:
- '@monolog.logger.channel2'

但是,我所有的日志都直接写入了 channel “app”,当我调试容器时,我看到列出了我的服务我做错了什么?

最佳答案

我发现了错误。默认情况下,config/services.yaml 将覆盖来自外部文件的所有配置。这就是为什么我的日志继续在默认 channel ( Autowiring )上的原因。为避免这种情况,您必须从 Autowiring 中排除记录器自定义文件

关于php - Monolog 没有写入正确的日志文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56679859/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com