[英]Symfony/Monolog: how to customize the format of logs about 404 not found exceptions
Monolog提供了一种从日志中排除404错误的方法,但是如果我想自定义它们而不是完全消除它们怎么办?
因此,显示的内容不同于:
[2016-12-12 10:41:01] request.ERROR:未捕获的PHP异常Symfony \\ Component \\ HttpKernel \\ Exception \\ NotFoundHttpException:“在/ myproject / vendor /中找不到“ GET / non-existing-route”的路由” symfony / symfony / src / Symfony / Component / HttpKernel / EventListener / RouterListener.php第125行{“ exception”:“ [对象](Symfony \\ Component \\ HttpKernel \\ Exception \\ NotFoundHttpException(code:0):找不到\\的路由”在/myproject/vendor/symfony/symfony/src/Symfony/Component/HttpKernel/EventListener/RouterListener.php:125、Symfony\\Component\\Routing\\Exception\\ResourceNotFoundException(代码:0)处获取GET / non-existing-route \\“:在/myproject/var/cache/dev/appDevDebugProjectContainerUrlMatcher.php:1181)“} []
假设您正在谈论app / logs目录中的日志寿命。 如果是这样,我会以这种方式直接进行。
创建一个自定义记录器和关联的日志格式化程序。 示例: 在symfony中创建自定义的monolog记录器和格式化程序
然后,我将在自定义事件侦听器中捕获NotFoundHttpException
异常(例如: 404 NotFoundHttpException发生时,使用onKernelException触发事件侦听器中的重定向 ),并使用在步骤1中创建的自定义记录器将其记录下来。
注意:您的自定义记录器已在上面的步骤1中注入控制器中。 在您的情况下,将其注入事件监听器。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.