Zend framework2 Zend Framework 2 Zend/日志记录器
我尝试使用Zend Framework 2创建日志文件。我通过使用Zend\Log\Logger和Zend\Log\Writer\Stream找到了解决方案。事实上,它工作得很好。但问题是,我需要在每个操作方法和每个控制器类中使用该代码Zend framework2 Zend Framework 2 Zend/日志记录器,zend-framework2,zend-log,Zend Framework2,Zend Log,我尝试使用Zend Framework 2创建日志文件。我通过使用Zend\Log\Logger和Zend\Log\Writer\Stream找到了解决方案。事实上,它工作得很好。但问题是,我需要在每个操作方法和每个控制器类中使用该代码 有人知道如何为整个网站创建日志文件,而不必在每个操作方法和每个控制器类中编写相同的代码吗?谢谢你的回答 您可以使用EventManager来实现这种功能。任何时候出现错误都会触发您定义的特定错误事件。然后您就有了LogingModule,它将连接到您想要记录的每
有人知道如何为整个网站创建日志文件,而不必在每个操作方法和每个控制器类中编写相同的代码吗?谢谢你的回答 您可以使用
EventManager
来实现这种功能。任何时候出现错误都会触发您定义的特定错误事件。然后您就有了LogingModule
,它将连接到您想要记录的每个事件
当然,您必须将异常/错误消息传递到事件中
TL/DR EventManager是您应该寻找的。我就是这样做的--$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”上,但是你更愿意连接到你的模块提供的事件。