【发布时间】:2012-04-17 11:03:49
【问题描述】:
我正在尝试轻松记录所有应用程序错误。 ZendFramework 是否有插件可以做到这一点,或者它本身可以做到这一点?
【问题讨论】:
标签: php zend-framework logging
我正在尝试轻松记录所有应用程序错误。 ZendFramework 是否有插件可以做到这一点,或者它本身可以做到这一点?
【问题讨论】:
标签: php zend-framework logging
输入您的配置:
phpSettings.log_errors = 1
phpSettings.error_log = "/path_to_yours_application_logs/php.log"
这会将所有错误日志放到 php.log 文件中。这是生产环境中的常用方法。
【讨论】:
Zend 包含重定向到 ErrorController 的标准错误处理插件。 这里有2个解决方案:
【讨论】:
您也可以在控制器中使用
try{
} catch(Zend_Exception $e){
echo $e->getMessage
(or log errors in log file using Zend_Log)
}
【讨论】:
记录所有错误类型(也包括 PHP 致命错误):
register_shutdown_function( 'myErrorHandler' );
function myErrorHandler() {
$error = error_get_last();
if( $error !== NULL) {
getMyZendLogger->log("got error: ".$error["message"], Zend_Log::ERR);
}
}
见How do I catch a PHP Fatal Error
Zend_Log::registerErrorHandler() (Zend-FW 1.12) 不能捕获所有错误
【讨论】: