例外処理ログ

1428 ワード

私たちの仕事の中でバグを避けることはできません.バグを迅速に解決するためには、正確で迅速な位置決めの問題が必要です.これには、送信されたパラメータ、どのクラスのどのメソッドでどのローが間違っているかを含む異常ログを完全に記録する必要があります.
 php    getTrace       
getTrace());
}
?>
  :
array(1) {
  [0]=>
  array(4) {
    ["file"]=>
    string(22) "/home/bjori/tmp/ex.php"
    ["line"]=>
    int(7)
    ["function"]=>
    string(4) "test"
    ["args"]=>
    array(0) {
    }
  }
}
       
Exception::getMessage —         
Exception::getCode —       
Exception::getTrace —         
Exception::getTraceAsString —               
    
function logs($data,$name='info') {
    if(!is_string($name)) {
        $name = 'info';
    }
    $path = YOUR_PATH."log/".date('Ymd')."_{$name}.log";
    if(is_array($data)){
        $data = json_encode($data,JSON_UNESCAPED_UNICODE);
    }
    $datetime = date("Y-m-d H:i:s");
    $str = "{$datetime}\t{$data}" . PHP_EOL;  
    @chgrp($path, 'test');
    @chown($path,'test');
    @chmod($path,0777); 
    file_put_contents($path, $str, FILE_APPEND);
}
        
getTrace());
  //logs($e->getTrace()[0]);//               ,       
}
?>