【问题标题】:Zend Framework 2 Zend/Log LoggerZend Framework 2 Zend/日志记录器
【发布时间】:2014-03-04 18:45:58
【问题描述】:

我尝试使用 Zend Framework 2 创建日志文件。我通过使用 Zend\Log\Logger 和 Zend\Log\Writer\Stream 找到了解决方案。事实上,它工作得很好。但问题是我需要在每个操作方法和每个控制器类中使用该代码。

有谁知道如何为整个网站创建日志文件,而无需在每个操作方法和每个控制器类中编写相同的代码?谢谢你的回答!

【问题讨论】:

    标签: zend-framework2 zend-log


    【解决方案1】:

    您可以将EventManager 用于此类功能。任何时候出现错误,您都会触发您定义的特定错误事件。然后你就有了你的LogingModule,它将连接到你想要记录的每一个事件。

    当然,您必须将异常/错误消息传递给事件。

    TL/DR EventManager 是您应该寻找的。​​p>

    【讨论】:

    • 我就是这样做的 -- $eventManager = $e->getApplication()->getEventManager(); $eventManager->attach('dispatch.error', function($e){ $exception = $e->getResult()->exception; if($exception) { $sm = $e->getApplication()-> getServiceManager(); $service = $sm->get('ApplicationServiceErrorHandling'); $service->logException($exception); } });是你的意思吗?
    • 粗略地说,你不会附加到“dispatch.error”,你宁愿挂钩到你的模块提供的事件。
    猜你喜欢
    • 2013-10-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多