Heim > PHP-Framework > YII > So erstellen Sie manuell Fehlerprotokolle in Yii

So erstellen Sie manuell Fehlerprotokolle in Yii

王林
Freigeben: 2020-12-10 16:48:16
nach vorne
3529 Leute haben es durchsucht

So erstellen Sie manuell Fehlerprotokolle in Yii

Die spezifische Methode lautet wie folgt:

Konfigurieren Sie zunächst die Fehlermethode und ändern Sie die errorHandler-Parameter

(Verwandte Empfehlungen: yii-Framework)

Unter config/web ist die Standardeinstellung die Fehlermethode unter Site Controller

'errorHandler' => [
            'errorAction' => 'site/error',
        ]
Nach dem Login kopieren

Geändert in:

'errorHandler' => [
            'errorAction' => 'error/error',
        ]
Nach dem Login kopieren

Ich bin es gewohnt, eine Fehlermethode basierend auf persönlichen Gewohnheiten neu zu erstellen.

Erstellen Sie actionError im Fehlercontroller wie folgt:

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;
   }
Nach dem Login kopieren

Das Fehlerprotokoll wird im Verzeichnis runtime/log generiert.

Das obige ist der detaillierte Inhalt vonSo erstellen Sie manuell Fehlerprotokolle in Yii. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:csdn.net
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage