私は 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 がログ ファイルを作成できるか、それとも手動で作成する必要があるかということです。