ホームページ >PHPフレームワーク >YII >Yii でエラーログを手動で生成する方法

Yii でエラーログを手動で生成する方法

王林
王林転載
2020-12-10 16:48:163541ブラウズ

Yii でエラーログを手動で生成する方法

具体的な方法は次のとおりです。

最初にエラー メソッドを構成し、errorHandler パラメーターを変更します

(関連する推奨事項: yii Framework)

config/web では、デフォルトはサイト コントローラーのエラー メソッドです。

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

は次のように変更されます:

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

Iエラーを再現することに慣れています。この方法は個人の習慣によって異なります。

エラー コントローラーで 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 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はcsdn.netで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。