我希望能够将调试消息写入日志文件。这样做的正确方法是什么?绝对没有我可以在那里找到的文档。我知道提到了 Monolog 包,但它没有写任何东西。请建议。
问问题
9250 次
1 回答
13
假设您使用的是默认包含的MonologBundle
第1步
定义您的处理程序服务并在那里传递目录/文件
your.log.handler:
class: %monolog.handler.stream.class%
arguments: [ %kernel.logs_dir%/%kernel.environment%.yourFileName.log ]
类参数%monolog.handler.stream.class%
在MonologBundle中定义,它是Monolog\Handler\StreamHandler
类
第2步
定义您的记录器服务并在那里注入您的处理程序
your.logger:
class: %monolog.logger.class%
arguments: [ nameOfLoggingChannel ]
calls: [ [pushHandler, [@your.log.handler]] ]
参数%monolog.logger.class%
也在MonologBundle中定义,代表Symfony\Bridge\Monolog\Logger
类
第 3 步
将其注入您的控制器并用作普通记录器
$logger = $this->get('your.logger');
$logger->warn('We are using custom logger');
检查你的app/logs/dev.yourFileName.log
于 2012-08-03T06:03:21.997 回答