ホームページ  >  記事  >  バックエンド開発  >  Yii フレームワークは、カスタム ファイルにログを記録するメソッドを実装します。

Yii フレームワークは、カスタム ファイルにログを記録するメソッドを実装します。

巴扎黑
巴扎黑オリジナル
2017-08-13 11:27:471095ブラウズ

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

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。