Yii2框架(五)日志的相关配置及使用

发布时间:2020-03-23 22:27:54 阅读:20

    框架的运行日志(runtime)在开发过程中是很有用的,但是吧,这玩意我一般不太愿意用,主要是和直接在浏览器var_dump中输出,日志是将运行结果写到文件中去了,还要去看文件中的内容,比较麻烦。

     

    但是,在没有办法在浏览器中输出,或者需要在运行过程中输出,但是又不想打断她的运行的时候,日志是一个非常好的选择。

     

    Yii2.0框架的日志操作如下:

    大概有五种方式:

    Yii::getLogger()->log($message, $level, $category = 'application')
    Yii::trace($message, $category = 'application');
    Yii::error($message, $category = 'application');
    Yii::warning($message, $category = 'application');
    Yii::info($message, $category = 'application');

     

    首先修改以下配置文件

    Config目录下的main.php

    原来的日志配置是这个样子的:

    'log'=> [
          'traceLevel' => YII_DEBUG ? 3 : 0,
          'targets' => [
            [
              'class' => 'yii\log\FileTarget',
              'levels' => ['error', 'warning'],
            ],
          ],
        ],

     

    修改成:

    'log' => [
        'traceLevel'=> YII_DEBUG ? 3 : 0,
        'targets' => [
            [
                'class' => 'yii\log\FileTarget',
                'levels' => ['error', 'warning','info','trace'],
            ],
            // 配置info信息输入
            [
                // 使用日志类
                'class'=> 'yii\log\FileTarget',
                // 配置日志等级
                'levels' => ['info'],
                //'categories' => ['rhythmk'],
                // 日志存放目录
                'logFile' => '@app/runtime/logs/requests.log',
                // 最大文件大小
                'maxFileSize' => 1024 * 2,
                'maxLogFiles' => 20,
            ],
            // 配置调试信息输出
            [
                // 使用日志类
                'class'=> 'yii\log\FileTarget',
                // 配置日志等级
                'levels' => ['trace'],
                //'categories' => ['rhythmk'],
                // 日志存放目录
                'logFile' => '@app/runtime/logs/trace.log',
                // 最大文件大小
                'maxFileSize' => 1024 * 2,
                'maxLogFiles' => 20,
            ],
        ],
    ],

     

    输出日志:

    Yii::getLogger()->log("开始写自定义日志",Logger::LEVEL_ERROR);
    Yii::trace("trace,开发调试时候记录");
    Yii::error("error,错误日志");
    Yii::warning("warning,警告信息");
    Yii::info("info,记录操作提示");

     

    一般我这里用的就是info输出,看值。

    Yii::info(‘值’.’键’);

     

    有好的建议,请在下方输入你的评论。


关键字yii php