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 の 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 サイトの他の関連記事を参照してください。