Я довольно новичок в ZF3 и не могу понять, как мне определить модуль логгера как сервис и как я могу использовать (повторно использовать) его в других модулях. Официальный документация беден с этой точки зрения. Любой короткий пример был бы хорош.
Если вы хотите использовать Zend-Log в приложении ZF, после установки вам нужно сделать 2 вещи:
Зарегистрироваться Zend\Log
в конфигурации приложения под ключом «модули».
Добавьте конфиг для вашего логгера в global.php или конфиг модуля
'log' => [
'MyLogger' => [
'writers' => [
'stream' => [
'name' => 'stream',
'priority' => \Zend\Log\Logger::ALERT,
'options' => [
'stream' => '/tmp/php_errors.log',
'formatter' => [
'name' => \Zend\Log\Formatter\Simple::class,
'options' => [
'format' => '%timestamp% %priorityName% (%priority%): %message% %extra%',
'dateTimeFormat' => 'c',
],
],
'filters' => [
'priority' => [
'name' => 'priority',
'options' => [
'operator' => '<=',
'priority' => \Zend\Log\Logger::INFO,
],
],
],
],
],
],
],
],
после этого просто возьмите его из Service Manager и используйте его:
$logger = $container->get('MyLogger'); // <-- the key that you register in config above
$logger->info('Logging info message in the file');
Вы, вероятно, хотите взять logger у SM, а затем внедрить его в класс, который хотите использовать.
Есть блог в блоге о регистрации с Зенд-журнал
Других решений пока нет …