在执行 Symfony 命令期间,我想将消息记录到不同的文件中。我已经阅读了 Symfony 和 Monolog 文档,它应该像我在这里描述的那样工作。 (请注意,我知道来自“教义”、“事件”等通道的消息仍将由主处理程序记录,但这对我来说并不重要)
In my config.yml
, 我有这个:
monolog:
channels: [commandline]
handlers:
main:
type: stream
path: "%kernel.logs_dir%/%kernel.environment%.main.log"
level: debug
channels: [!commandline]
commandline:
type: stream
path: "%kernel.logs_dir%/%kernel.environment%.commandline.log"
level: debug
channels: commandline
stdout:
type: stream
path: "php://stdout"
level: debug
channels: commandline
mail:
type: stream
action_level: alert
handler: buffered_mail
buffered_mail:
type: buffer
handler: swift
swift:
type: swift_mailer
from_email: [email protected]
to_email: [email protected]
subject: "Something went wrong"
level: alert
我期望有 2 个日志文件:dev.main.log
and dev.commandline.log
。
但我还有第三个日志文件:dev.log
记录all消息。
我似乎没有找到该日志处理程序的定义位置以及如何阻止它记录内容......
如果有人能指出我正确的方向,那就太好了!
顺便说一句,我正在使用:
EDIT
没有monolog
部分中的config_dev.yml
REMOVE monolog.handlers.main
from config_dev.yml
.
它通常包含path: "%kernel.logs_dir%/%kernel.environment%.log"
config _dev.yml(默认)
monolog:
handlers:
main: # <- remove this handler
type: stream
path: "%kernel.logs_dir%/%kernel.environment%.log" #<- logs/dev.log
level: debug
去除main
来自此配置文件的处理程序。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)