为什么 Zend_Log_Writer_Firebug 无法记录来自dispatchLoopShutdown 插件的消息?

发布于 2024-09-17 17:12:33 字数 486 浏览 5 评论 0原文

为什么日志可以从dispatchLoopShutdown插件发送,因为它发生在Zend_Controller_Response_Abstract->sendResponse()之前并且任何标头尚未发送?

我在引导程序中初始化记录器资源

  protected function _initLogger()
  {
    $writer = new Zend_Log_Writer_Firebug();
    $logger = new Zend_Log($writer);

    Zend_Registry::set('logger', $logger);
    return $logger;
  }

并从任何地方使用它

Zend_Registry::get('logger')->debug('test');

,它可以工作到dispatchLoopShutdown插件执行点...

Why logs can be sent from dispatchLoopShutdown plugin as it occurs before Zend_Controller_Response_Abstract->sendResponse() and any headers haven't been sent yet ?

I init logger resource in my bootstrap

  protected function _initLogger()
  {
    $writer = new Zend_Log_Writer_Firebug();
    $logger = new Zend_Log($writer);

    Zend_Registry::set('logger', $logger);
    return $logger;
  }

and use it from anywhere

Zend_Registry::get('logger')->debug('test');

and it works up to dispatchLoopShutdown plugin execution point...

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

笑看君怀她人 2024-09-24 17:12:33

AFAIK Firebug 作者在dispatchLoopShutdown 中有他自己的插件,用于在响应中注入数据。您应该添加具有较低优先级的插件(请参阅手册)。

AFAIK the Firebug writer has his own plugin in the dispatchLoopShutdown to inject the data in the response. You should add your plugin with a lower priority (see manual).

半透明的墙 2024-09-24 17:12:33

Zend_Log_Writer_Firebug 本身会在第一次运行时注册他的 dispatchLoopShutdown 插件(简称 dLSp),以便让这个记录器在 dLSp 中工作code> 在调用 dLSp 中的记录器之前,您需要先注册 Zend_Log_Writer_FirebugdLSp (Zend_Wildfire_Channel_HttpHeaders)。例如,您可以通过在引导程序中调用 $logger->log('') 来实现此目的

Zend_Log_Writer_Firebug itself registers his dispatchLoopShutdown plugin (dLSp for short) during it first run, so to get this logger working in dLSp you need Zend_Log_Writer_Firebug's dLSp (Zend_Wildfire_Channel_HttpHeaders) to be already registered before calling logger in dLSp. You can achieve this for examle by calling $logger->log('') in your bootstrap

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文