繁体   English   中英

Zend_log创建两个日志文件

[英]Zend_log create two log files

我正在编写自己的Zend_log,但很难追踪。 我必须生成特定于模块的日志,但与此同时,我还要创建一个全局的application.log! 我不想要..

在我的application.ini中

resources.log.stream.writerName = "Stream"
resources.log.stream.writerParams.stream = APPLICATION_PATH "/../logs/application.log"

我有引导代码

if ($this->hasPluginResource("log"))
        {
            $r = $this->getPluginResource("log");
            $log = $r->getLog();
            Zend_Registry::set('log',$log);
        }

在我的Logger类中,我试图覆盖_stream,以便在写入Log时始终按以下方式写入单个文件.code。

$writerArr=array('stream'=>$logfile,'mode'=>'a');
$writer = Zend_Log_Writer_Stream::factory($writerArr);

但是正如我在配置文件中提供了application.log一样,它总是在创建application.log!...

我想覆盖那些流,但不知道如何? 确保在?? ...中仅写入一个作者/流的任何方法

否则,我建议删除application.ini和引导代码,但是那样我将无法记录ErrorController.php错误...

我希望解决方案“ application.log”用于ErrorController.php引发的错误以及应用程序错误,我希望我的Logger类记录该错误...但是我无法一次确保单个流...

有什么线索吗?

问候,

尝试删除整个application.ini代码,并在引导程序本身中使zend_log初始化:

$writer = new Zend_Log_Writer_Stream('[/your/log/file/path]', '[file_open_mode]');
$logger = new Zend_Log($writer);

最好在知道写入位置以及初始化记录器本身之后初始化书写器。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM