首頁  >  文章  >  php框架  >  yii怎麼手動產生錯誤日誌

yii怎麼手動產生錯誤日誌

王林
王林轉載
2020-12-10 16:48:163415瀏覽

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目錄下了。

以上是yii怎麼手動產生錯誤日誌的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:csdn.net。如有侵權,請聯絡admin@php.cn刪除