2011/10/08

CodeIgniter 怎麼寫 log?要去哪裡看?

CodeIgniter 寫入 log 的函式是 log_message('level', 'message'),這是內建的錯誤處理函式,不用宣告或載入任何類別,隨時隨地都可以使用。

函式名稱: log_message('level', 'message')
參數說明:
  1. level : 錯誤層級,可用值為 error、debug、info。
  2. message : 訊息內容。
使用範例:
if ($some_var == '') {
    log_message('error','Some variable did not contain a value.');
}
else {
    log_message('debug','Some variable was correctly set');
}
log_message('info','The purpose of some variable is to provide some value.');

CodeIgniter 的 log 檔預設是放在 application/logs/ 目錄下,檔名是 log-YYYY-MM-DD.php 依照日期命名。

如果發現 log 沒有寫入,請參考以下步驟檢查:
  1. 檢查 application/logs/ 目錄的存取權限,是否可以讓 php 寫入。
  2. 檢查 application/config/config.php 內設定的 log 寫入門檻是否過高,或是被關閉了。

參考資料:官方說明的錯誤處理一節。