tp5實現Log 日志輸出


第一步: 引入tp5自帶log日志類

use \think\Log;

 

第二步配置日志文件

Log::init([
// 日志記錄方式,內置 file socket 支持擴展
'type' => 'File',
// 日志保存目錄
'path' => APP_PATH . 'logs/',
// 日志記錄級別
'level' => ['error'],
]);

 

第三部調用日志輸錯日志內容

Log::error('phone: ' . input('phone') . "\n");

 

官方給出的日志文檔如下:

日志級別

ThinkPHP對系統的日志按照級別來分類,並且這個日志級別完全可以自己定義,系統內部使用的級別包括:

  • log 常規日志,用於記錄日志
  • error 錯誤,一般會導致程序的終止
  • notice 警告,程序可以運行但是還不夠完美的錯誤
  • info 信息,程序輸出信息
  • debug 調試,用於調試信息
  • sql SQL語句,用於SQL記錄,只在數據庫的調試模式開啟時有效

系統提供了不同日志級別的快速記錄方法,例如:

Log::error('錯誤信息');
Log::info('日志信息');
// 和下面的用法等效
Log::record('錯誤信息','error');
Log::record('日志信息','info');

還封裝了一個助手函數用於日志記錄,例如:

trace('錯誤信息','error');
trace('日志信息','info');

也支持指定級別日志的輸入,需要配置信息:

'log'   => [
    'type'  => 'File',
    // 日志記錄級別,使用數組表示
    'level' => ['error'],
],

單文件日志

在某些情況下,需要對日志記錄進行分析和處理,那么開啟單文件日志寫入就會方便分析

'log'   => [
    'type'  => 'File',
    // 日志記錄級別,使用數組表示
    'single' => true,
],

開啟后,日志文件不再區分日期文件寫入,而是統一寫入到single.log文件中。

日志自動清理

V5.0.16+版本開始,支持文件日志的自動清理功能,你可以設置

'max_files'    => 30

則日志文件最多只會保留30個,超過會自動清理較早的日志文件,避免日志文件長期寫入占滿磁盤空間。

phpstudy 配置日志文件

需要將php.ini中的配置指令做如下修改:

1. error_reporting = E_ALL ;將會向PHP報告發生的每個錯誤

2. display_errors = Off ;不顯示滿足上條 指令所定義規則的所有錯誤報告

3. log_errors = On ;決定日志語句記錄的位置

4. log_errors_max_len = 1024 ;設置每個日志項的最大長度

5. error_log = E:/php_log/php_error.log ;指定產生的 錯誤報告寫入的日志文件位置

輸出錯誤日志信息

error_log("輸出錯誤日志", 0);

phpstudy mysql 開啟錯誤日志方法

在的配置文件mysql-ini中加入下面的配置

log-error="D:/phpStudy/MySQL/logs/error.log"

log="D:/phpStudy/MySQL/logs/mysql.log"

long_query_time=2

log-slow-queries= "D:/phpStudy/MySQL/logs/slowquery.log"


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM