私は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);
私の質問はloggerは設定をサポートしていますか?モジュールコンフィグの['service_manager' => 'factories' => [ . . . ] ]
に追加するだけですか?私は書き込む工場クラスをどこに置くべきですか?他のサービスでは?
私はこれを「正しい」方法で解決するのに苦労しています。
あなたはロガーファクトリーを作成していますか?コントローラとロガーの工場を貼り付けることができます。 – tasmaniski