1

我正在学习 ZF2 并尝试使用 ZF2 建立一个宁静的 Web 服务架构。我在创建日志文件时遇到问题。

这是我的模块配置:

'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 可以创建日志文件还是我们必须手动创建它?

4

2 回答 2

0

请检查是否/home/mani/logs存在,否则将不会创建它,并且会抛出相同的错误。还给777宿舍。

于 2015-12-16T18:33:20.507 回答
0

我认为您有权限问题,例如尝试使用 /tmp/app.log 更改路径。

谢谢

于 2015-12-12T21:48:19.287 回答