TP5: 日誌記錄改造——4

TP5的日誌如果沒有特別設置的話,只要出現錯誤就會記錄在日誌文件中。這種是沒有做必要的,因爲這樣的話,LOG文件會特別大,而且有好多都是沒有用的信息。下面我們對LOG日誌進行改造只記錄我們需要的信息。

還記得上一章中,異常封裝中。看記錄日誌出現的位置,我們只記錄未知錯誤,而一些用戶引起的一些參數錯誤 ,我們在這裏不記錄。

class ExceptionHandler extends Handle
{
private $code;
private $msg;
private $errorCode;
public function render(Exception $e)
{
if($e instanceof BaseException){ //是否爲BaseException繼承類
$this->code =$e ->code;
$this->msg =$e ->msg;
$this->errorCode =$e ->errorCode;
}else{
if(config("app_debug")==true){ //如是開啓調試,就走原來的方法
return parent::render($e);
}else{ //如是關閉調試,是未知錯誤,我們只需要統一回復
$this->code = 500;
$this->msg = 'sorry,we make a mistake. (^o^)Y';
$this->errorCode = 999;
$this->recodeErrorLog($e); //記錄到日誌中,這個下一節會講
}

}
$request = Request::instance(); //參數實例
$result=[
"msg"=> $this->msg,
"errorCode" =>$this->errorCode,
"require_url"=>$request->url() //取出訪問時的URL
];
return json($result,$this->code);
}

我們先找開config.php這個文件,找到日誌存放的位置,我們順着找到,可能會出現在REANTIME那個目錄下面。

我們需要改路徑的話,只需要在入口文件中定義一個常量。如圖:

我們已經更改了日誌存放的路徑,那麼我們要在我們需要的時候開啓日誌怎麼辦,我們先要在config.php這個文件把type關掉

那麼我們現在是不能記錄日誌的了,因爲我們把日誌關了,現在我們要在ExceptionHandler開啓日誌,

  

當我們要記錄日誌時,我們只要調用這個方法就行

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章