この記事では、Yii フレームワークのログをカスタム ファイルに記録する方法を主に紹介し、Yii フレームワークのロギングの原理と関連するカスタム ロギングの設定と実装スキルをサンプルの形式で分析します。この記事の例では、Yii フレームワークがカスタム ファイルへのロギングを実装する方法について説明します。参考のためにみんなと共有してください。詳細は次のとおりです:
デフォルトでは、
は runtime/application.log ファイルにログを記録しますYii::log($msg, $level, $category)
[時間] - [ [レベル] - [カテゴリ] - [内容]
2013/05/03 17:33:08 [error] [application] test
これは、Yii で別の CLogRouter を設定することで解決できます。
最初に Yii のロギングメカニズムを理解する必要があります。Yii のロギング関数は CLogger と CLogRouter の 2 つの部分で構成されます。CLogger はログ データをメモリに記録する役割を担い、CLogRouter はログ データの処理方法を決定します。ファイルまたはデータベース、または電子メールの送信など。 CFileLogRoute は、ファイル形式のログ データを処理するために使用されます。したがって、当然のことながら、異なる CFileLogRoutes を構成することで、ログを異なるログ ファイルに記録できます。
具体的な設定は次のとおりです:'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 中国語 Web サイトの他の関連記事を参照してください。