Я изучаю ZF2 и пытаюсь создать спокойную архитектуру веб-сервисов с использованием ZF2. У меня возникла проблема с созданием файла журнала.
Здесь моя конфигурация модуля:
'service_manager' => array(
'factories' => array(
'loggingService' => function(\Zend\ServiceManager\ServiceManager $serviceManager) {
$logger = new \Zend\Log\Logger();
$writer = new \Zend\Log\Writer\Stream('/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 создать файл журнала или мы должны создать его вручную?
Проверьте, существует ли /home/mani/logs
, потому что в другом случае он не будет создан и будет сброшена одна и та же ошибка. Также дайте 777
доректории.
На мой взгляд, у вас есть проблема с разрешением, попробуйте изменить путь с помощью /tmp/app.log, например.
благодаря