首頁 >後端開發 >php教程 >Yii框架實作記錄日誌到自訂檔案的方法

Yii框架實作記錄日誌到自訂檔案的方法

巴扎黑
巴扎黑原創
2017-08-13 11:27:471150瀏覽

這篇文章主要介紹了Yii框架實現記錄日誌到自訂文件的方法,結合實例形式分析了Yii框架日誌記錄的原理及自訂日誌記錄的相關配置與實現技巧,需要的朋友可以參考下

本文實例講述了Yii框架實作記錄日誌到自訂檔案的方法。分享給大家供大家參考,具體如下:

預設情況下,Yii::log($msg, $level, $category)會把日誌記錄到runtime/application.log檔案中

日誌格式如下:

[時間] - [等級] - [類別] - [內容]


2013/05/03 17:33:08 [error] [application] test

但有時候需要把某些特定的日誌放到特定的檔案中,例如交易失敗的日誌,需要和其他日誌區分開來單獨記錄。

在Yii中可以透過配置不同的CLogRouter來解決。

你需要先了解Yii的日誌機制,Yii的日誌功能有CLogger和CLogRouter兩部分,

其中CLogger負責記錄日誌資料在記憶體中,而CLogRouter則決定如何處理這些日誌數據,如記錄到檔案或資料庫,或發送郵件等

其中的CFileLogRoute就是用來以檔案的形式來處理日誌資料的。那麼很自然的,透過設定不同的CFileLogRoute就可以把日誌記錄到不同的日誌檔案中。

具體配置如下:


'log' => array(
  'class' => 'CLogRouter',
  'routes' => array(
    array(
      'class' => 'CFileLogRoute',
      'levels' => 'error, warning',
    ),
    array(
      'class' => 'CFileLogRoute',
      'levels' => 'error, warning',
      'categories'=> 'orders.*',
      'logFile'=> 'orders.log',
    ),

在需要記錄訂單錯誤的地方,新增如下程式碼:


Yii::log('your message', 'error', 'orders');

以上是Yii框架實作記錄日誌到自訂檔案的方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn