Yii フレームワークでログを書き込むにはどうすればよいですか?

angryTom
リリース: 2020-02-05 17:59:29
オリジナル
3314 人が閲覧しました

開発中、プログラムのデバッグや情報の記録を容易にするために、必要な情報をファイル (ログ ファイル) に書き込みます。yii フレームワークは、ログを書き込む優れた方法を提供します。一緒に見てください。

Yii フレームワークでログを書き込むにはどうすればよいですか?

#yii フレームワークはどのようにログを書き込むのでしょうか?

1. Yii でログを使用するには、まず設定ファイルを変更する必要があります:

'log' => [
    'traceLevel' => YII_DEBUG ? 3 : 0,
    'targets' => [
        [
            'class' => 'yii\log\FileTarget',
            'levels' => ['error', 'warning'],
            'logVars' => ['_GET'],
        ],
    ],
],
ログイン後にコピー

targets パラメータの説明:

● クラスは、ログを保存するためのファイルの使用を指定します。

##● レベルは、エラー ログと警告ログの保存を指定します。

##● logVars は、取得パラメータの保存を指定します。

logVars が指定しない場合、GET POST COOKIE は SESSION SERVER およびその他のパラメータに保存されます。これは表示に影響します。これを

'logVars' => ['*'], // 只记录message
ログイン後にコピー

2 に変更できます。次のように使用します。

Yii::error($message);
Yii::warning($message);
ログイン後にコピー

別のファイルにログを書き込む

##方法 1: まず、ログを記録する必要があるログ ファイル アドレスを割り当ててから、ログを書き込みます

Yii::$app->log->targets[0]->logFile = Yii::getAlias('@runtime').DIRECTORY_SEPARATOR.'logs'.DIRECTORY_SEPARATOR.'app2.log';
Yii::warning($message);
ログイン後にコピー

方法 2 (推奨): 構成ファイル main.php

'log' => [
    'traceLevel' => YII_DEBUG ? 3 : 0,
    'targets' => [
        [
            'class' => 'yii\log\FileTarget',
            'levels' => ['error', 'warning'],
            'logVars' => ['*'],
            //'categories' => ['application'],
            //'logFile' => '@runtime/logs/app.log',
        ],
        [
            'class' => 'yii\log\FileTarget',
            'categories' => ['pay'],
            'levels' => ['error', 'warning'],
            'logVars' => ['*'],
            'logFile' => '@runtime/logs/pay.log',
        ],
        [
            'class' => 'yii\log\FileTarget',
            'categories' => ['order'],
            'levels' => ['error', 'warning'],
            'logVars' => ['*'],
            'logFile' => '@runtime/logs/order.log',
        ],
    ],
],
ログイン後にコピー
を変更します。使用:
Yii::warning($message,'pay')
ログイン後にコピー
ここでのメッセージは、次の場所に記録されます。 pay.log、そしてもちろん、app.log のデフォルトの

にも記録されます。このコードのコメントを解除できます:

//'categories' => ['application'],

、それぞれのログにのみ記録されるようにします。

ただし、これにより、一部のエラー情報が app.log に記録されなくなります。

以上がYii フレームワークでログを書き込むにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
yii
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!