這篇文章主要介紹了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中文網其他相關文章!