【发布时间】:2013-05-09 20:47:31
【问题描述】:
我编写记录器配置并使用 Zend\Log\LoggerServiceFactory 来配置记录器。如果我使用基础作家所有工作。但是我想将我自己的由工厂创建的作家添加到记录器中,这是行不通的。
有没有办法使用 config 和 base logger factory 从自己的工厂添加 writer?
更新:这是我的代码
这是我的配置,我为 Logger 定义工厂,为编写器定义工厂,为基础编写器定义配置
// config/autoload/global.php
return array(
'service_manager' => array(
'factories' => array(
'Logger' => 'Zend\Log\LoggerServiceFactory',
'Rollbar' => 'Yassa\Rollbar\Log\Writer\Rollbar'
),
),
'log' => array(
'writers' => array(
array(
'name' => 'stream',
'options' => array(
...
),
),
array(
'name' => 'stream',
'options' => array(
...
),
),
array(
'name' => 'Rollbar',
),
),
),
);
Yassa\Rollbar\Log\Writer\Rollbar - 它是 yassa\rollbar 模块 (github) 的工厂
如果没有 Rollbar 写入器,此配置可以满足我的需要 - 创建和配置标准写入器。
因此我从 aontroller 调用 logger:
$this->getServiceLocator()->get('Logger')->info('test');
【问题讨论】:
-
也许你可以给我们看一些代码来帮助你
-
我为延迟道歉。添加代码示例
标签: zend-framework2