yii怎么手動生成錯誤日志

yii怎么手動生成錯誤日志

具體方法如下:

首先配置錯誤方法,修改ErrorHandler參數

(相關推薦:yii框架

在config/web下,默認為site控制器下的error方法

'errorHandler'?=>?[ ????????????'errorAction'?=>?'site/error', ????????]

修改為:

'errorHandler'?=>?[ ????????????'errorAction'?=>?'error/error', ????????]

我習慣于重新創建一個錯誤方法,根據個人習慣來。

在error控制器里創建actionError,如下:

public?function?actionError(){ ???????$error?=?YII::$app->errorHandler->exception; ???????$error_msg?=?''; ???????if($error){ ???????????$filed?=?$error->getFile();??//獲取錯誤文件 ???????????$line?=?$error->getLine();???//獲取錯誤行數 ???????????$message?=?$error->getMessage();?//獲取錯誤消息 ???????????$code?=?$error->getCode();???//獲取錯誤碼  ???????????$log?=?new?FileTarget(); ???????????$log->logFile?=?Yii::$app->getRuntimePath()?.?"/log/error.log";?//生成文件到log目錄下  ???????????$error_msg?=?$message?."?[file:{$filed}][line:{$line}][message:{$message}][code:{$code}][url:{$_SERVER['REQUEST_URI']}][POST_DATA:".http_build_query($_POST)."]";  ???????????$log->messages[]?=?[ ???????????????$error_msg, ???????????????1, ???????????????'applicition', ???????????????microtime(?true?) ???????????]; ????????????$log->export(); ???????} ???????return?$error_msg; ???}

這樣錯誤日志就會生成在runtime/log目錄下了。

? 版權聲明
THE END
喜歡就支持一下吧
點贊8 分享