CI原始碼分析(二)—Log, 日誌模組
阿新 • • 發佈:2019-01-23
Ci的日誌模組是作為一個library來實現以及使用的。
(一) 使用方式
(a) 配置
在applicatin/environment/config/config.php中
- log_threshold: 可寫日誌級別閥值.array('ERROR' => '1', 'DEBUG' => '2', 'INFO' => '3', 'ALL' => '4’).小於等於閥值的級別都可以寫入。配合這evironment的使用,可以在不同的環境下記錄不同級別的日誌,例如development環境記錄all級別,testing記錄到debug級別,production環境記錄error級別
- log_path: 日誌檔案根目錄,預設是application/logs, 必須保證目錄有寫許可權
- log_date_format: 每天日誌中的日期格式
- $this->log->write_log($level = 'error', $msg)
- write_log($level = 'error', $msg, $php_error = FALSE): 根據日誌級別來判定是否可寫入日誌
- threshold配置限制死了日誌的寫入,例如在production環境,只能寫入error級別的日誌,即使想臨時加一些debug級別的Log也無法實現。此處我自己擴充套件了一個write_log_force方法。呼叫這個方法,會先把threshold調到all級別,然後寫日誌,最後恢復threshold級別. 地址https://github.com/wkupaochuan/analysis-about-ci-frame.git