gpt4 book ai didi

php - 为什么 Symfony 仍然记录到 dev.log 文件,即使我没有在 loghandler 中定义它?

转载 作者:可可西里 更新时间:2023-11-01 14:03:05 24 4
gpt4 key购买 nike

在 Symfony 命令执行期间,我想将消息记录到不同的文件中。我已经阅读了 Symfony 和 Monolog 文档,它应该像我在这里描述的那样工作。 (请注意,我知道来自“原则”、“事件”…… channel 的消息仍将由主处理程序记录,但这对我来说无关紧要)

在我的 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: some@email.com
to_email: some@email.com
subject: "Something went wrong"
level: alert

我希望有 2 个日志文件:dev.main.logdev.commandline.log。但我仍然有第三个日志文件:dev.log 记录所有 消息。我似乎没有找到该 loghandler 的定义位置以及如何防止它记录内容...

如果有人能指出我正确的方向,那就太好了!

顺便说一句,我正在使用:

  • symfony 2.3
  • monolog-bundle 2.4

编辑

config_dev.yml 中没有monolog部分

最佳答案

config_dev.yml 中删除 monolog.handlers.main

通常包含 path: "%kernel.logs_dir%/%kernel.environment%.log"

配置_dev.yml(默认)

monolog:
handlers:
main: # <- remove this handler
type: stream
path: "%kernel.logs_dir%/%kernel.environment%.log" #<- logs/dev.log
level: debug

从此配置文件中删除 main 处理程序。

关于php - 为什么 Symfony 仍然记录到 dev.log 文件,即使我没有在 loghandler 中定义它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20397400/

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