ZendFramework日志错误


ZendFramework Log Errors

我正在尝试轻松地记录所有应用程序错误。ZendFramework是否有一个插件可以做到这一点,或者它可以在本机上做到?

键入您的配置:

phpSettings.log_errors = 1
phpSettings.error_log = "/path_to_yours_application_logs/php.log"

这会将所有错误日志放到php.log文件中。这是生产环境中常见的方法。

Zend包括重定向到ErrorController的标准错误处理插件。这里有两个解决方案:

  1. 创建Zend_Controller_Plugin_ErrorHandler并在引导程序/控制器中注册
  2. 创建自定义PHP错误处理程序

您也可以在控制器中使用

try{
} catch(Zend_Exception $e){
    echo $e->getMessage
    (or log errors in log file using Zend_Log) 
}

Zend_Log

Zend_Exception

要记录所有错误类型(也是PHP致命错误):

    register_shutdown_function( 'myErrorHandler' );
    function myErrorHandler() {
      $error = error_get_last();
      if( $error !== NULL) {
        getMyZendLogger->log("got error: ".$error["message"], Zend_Log::ERR);
      }
    }

请参阅如何捕获PHP致命错误

Zend_Log::registerErrorHandler()(Zend FW 1.12)未捕获所有错误