首頁 >後端開發 >php教程 >詳解Yii框架如何實現記錄日誌到自訂文件

詳解Yii框架如何實現記錄日誌到自訂文件

*文
*文原創
2018-01-03 13:32:201557瀏覽

Yii框架如何實現記錄日誌到自訂檔案?本文主要介紹了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中的屬性(Property)詳解

#YII關聯查詢詳解

Yii框架中的form表單

以上是詳解Yii框架如何實現記錄日誌到自訂文件的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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