有什么方法可以在 symfony2 的 monolog 中定义我的自定义级别。
我做这个
$logger->err('发生错误');
然后在数据库中我添加了这个。
channel 是app
,级别是500
有什么办法可以做到这一点
$logger->log("message",(channel),(level)
$logger->log("Object with is 212 deleted",'DELETE',NORMAL);
这样我就可以在数据库中有单独的东西用于报告和查看
最佳答案
使用 MonologBundle 的 2.4 及更高版本(注意,MonologBundle 的发布周期不再与 symfony 同步),您现在可以通过配置非常简单地定义新 channel ,而无需定义服务。
monolog:
channels: ["my_channel"]
现在只需在您的 Controller 中获取为新 channel 自动创建的记录器:
$logger = $this->get('monolog.logger.my_channel');
$logger->info('somelogcontent');
消息级别是通过使用适当的方法来定义的。查看LoggerInterface
查看所有日志记录方法(确实由 monolog 实现)。这里需要提到一些层次:
$logger->info('Info message for interesting things');
$logger->warning('Some application warnings, but the application works');
$logger->error('Error which can influence the application flow/output');
我知道老问题了,但是应该提到 MonologBundle
~2.4
中的这个新特性。
关于php - 如何在 symfony2 的独白日志记录中定义 channel 和级别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11945880/