我正在学习ZF2,并试图使用ZF2建立一个宁静的web服务体系结构。我在创建日志文件时遇到问题。
这是我的模块配置:
'service_manager' => array(
'factories' => array(
'loggingService' => function(ZendServiceManagerServiceManager $serviceManager) {
$logger = new ZendLogLogger();
$writer = new ZendLogWriterStream('/home/mani/logs/forum.log');
$logger->addWriter($writer);
return $logger;
}
)
)
在这里,我创建了一个记录器作为服务,并尝试在控制器中使用构造函数注入logginService。
public function createService(ServiceLocatorInterface $serviceLocator) {
$coreServiceLocator = $serviceLocator->getServiceLocator();
$loggingService = $coreServiceLocator->get('loggingService');
return new QuestionController($loggingService);
}
我认为它会起作用,但ZF2无法创建一个显示以下消息的日志文件:
fopen(/home/mani/logs/forum.log): failed to open stream: No such file or directory
所以我的困惑是ZF2可以创建日志文件吗?还是我们必须手动创建它?
在我看来,您有权限问题,请尝试使用/tmp/app.log更改路径。
感谢
请检查/home/mani/logs
是否存在,因为在其他情况下,它不会被创建,并且会引发相同的错误。并将CCD_ 2给予dorectory。