項目運行時間長了,就會發現日誌文件加佔用的空間特別大,現就控制日誌寫入和日誌自動清理兩種方式解決此問題:
一,控制日誌寫入
TP5手冊說明:系統並未提供關閉日誌的方法,但有兩種方式可以關閉日誌的寫入
方式一:設置日誌類型爲test,即可不寫入任何日誌。
'log' => [
// 日誌記錄方式,內置 file socket 支持擴展
'type' => 'test',
// 日誌保存目錄
'path' => LOG_PATH,
// 日誌記錄級別
'level' => [],
],
方式二:設置日誌記錄級別。配置文件-->log設置爲error級別,這樣就只記錄錯誤日誌。
'log' => [
// 日誌記錄方式,內置 file socket 支持擴展
'type' => 'File',
// 日誌保存目錄
'path' => LOG_PATH,
// 日誌記錄級別
'level' => ['error'],//['log', 'error', 'info', 'sql', 'notice', 'alert', 'debug']
],
TP對系統的日誌按照級別來分類,並且這個日誌級別完全可以自己定義,系統內部使用的級別包括:
- log - 常規日誌,用於記錄日誌
- error - 錯誤,一般會導致程序的終止
- notice - 警告,程序可以運行但是還不夠完美的錯誤
- info - 信息,程序輸出信息
- debug - 調試,用於調試信息
- sql - SQL語句,用於SQL記錄,只在數據庫的調試模式開啓時有效
二,日誌自動清理
5.0.16+版本開始,支持文件日誌的自動清理功能,設置 'max_files' => 20 則日誌文件最多隻會保留20個,超過會自動清理較早的日誌文件,避免日誌文件長期寫入佔滿磁盤空間。【這裏的20是指文件個數,不是一個文件中的條數,注意是5.016以上版本】
'log' => [
// 日誌記錄方式,內置 file socket 支持擴展
'type' => 'File',
// 日誌保存目錄
'path' => LOG_PATH,
// 日誌記錄級別
'level' => [],
'max_files' => 20,
],
謹此記錄,後續更新。