>PHP 프레임워크 >YII >Yii에서 오류 로그를 수동으로 생성하는 방법

Yii에서 오류 로그를 수동으로 생성하는 방법

王林
王林앞으로
2020-12-10 16:48:163541검색

Yii에서 오류 로그를 수동으로 생성하는 방법

구체적인 방법은 다음과 같습니다.

먼저 오류 방법을 구성하고 errorHandler 매개 변수를 수정합니다.

(관련 권장 사항: yii 프레임워크)

config/web에서 기본값은 사이트 컨트롤러

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

수정:

'errorHandler' => [
            'errorAction' => '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;
   }

오류 로그는 런타임/로그 디렉터리에 생성됩니다.

위 내용은 Yii에서 오류 로그를 수동으로 생성하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 csdn.net에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제