我有一個ZendFramework application。它運行Zend Framework 3.我添加了zend-log,並將它注入到constructor of the IndexController中,我在索引控制器的索引操作中記錄了一條消息,如下所示。如何爲Zend Framework MVC應用程序配置默認的ZendLog工廠?
public function __construct(Logger $logger)
{
$this->logger = $logger;
}
public function indexAction()
{
$this->logger->info('Example Log Message');
return new ViewModel();
}
我可以用vendor/bin/generate-factory-for-class
爲此生成一個工廠。我像這樣將它添加到模塊配置中。
'controllers' => [
'factories' => [
Controller\IndexController::class => Controller\IndexControllerFactory::class,
],
],
當我運行指標控制器我收到以下錯誤:
/var/www/vendor/zendframework/zend-log/src/Logger.php:434
No log writer specified
我知道我可以用下面添加一個作家:
$logger->addWriter($writer);
我的問題是,什麼是記錄器支持配置?我只是將它添加到模塊配置中的['service_manager' => 'factories' => [ . . . ] ]
?我應該把我寫的工廠課程放在哪裏?與其他服務?
我正在努力解決這個「正確」的方式。
是您創建的記錄器廠?你可以粘貼控制器和記錄器工廠嗎? – tasmaniski