2

デフォルトの/protected/runtime/application.logファイルではなく、ログメッセージを別のログファイルに保存したい。

私のconfig/main.phpファイルは次のようなものです

'log'=>array(
            'class'=>'CLogRouter',
            'routes'=>array(
                array(
                    'class'=>'CFileLogRoute',
                    'levels'=>'error, warning,info,trace',
                    'categories'=>'system.*',
                ),

ここではログメッセージ機能を使用しています

public function changeLanguage($localLanguage)
{

    $currentLanguage=yii::app()->language;
    yii::app()->language=$localLanguage;
    $message='langusge changed from '.$currentLanguage.' to '.$localLanguage;
    $level='info';
    $category='system.web.CController';
    Yii::log($message, $level, $category);
}

このログメッセージは、私のメッセージ以外の多くのメッセージとともにapplication.logに保存されます。そのため、言語変更機能ログ用に別のファイルが必要です。

4

1 に答える 1

11

別のログファイル名を指定して、追加のログルートを定義する必要があります。

'log'=>array(
    'class'=>'CLogRouter',
    'routes'=>array(
        array(
            'class'=>'CFileLogRoute',
            'categories'=>'system.*',
        ),
        array(
            'class'=>'CFileLogRoute',
            'logFile'=>'custom.log',
            'categories'=>'custom.*',
        ),
    )
)

詳細については、決定的なガイドのログセクションを参照してください。

于 2012-08-29T08:54:48.423 に答える