Yii框架日志操作图文与实例详解


Posted in PHP onSeptember 09, 2019

本文实例讲述了Yii框架日志操作。分享给大家供大家参考,具体如下:

将日志记录到文本中.

Yii::log("test"); //写入测试日志

//找到配置文件 component->log 
'log'=>array(
  'class'=>'CLogRouter',
  'routes'=>array(
    array(
      'class'=>'CFileLogRoute',
      'levels'=>'warning,error,info' ,
     ),

Yii框架日志操作图文与实例详解

  • 将指定的categories下的日志,写入到指定的文件夹中
    Yii::log("test my cate" , CLogger::LEVEL_INFO , "debug");

    'log'=>array(
      'class'=>'CLogRouter',
      'routes'=>array(
        //...
        array(
          'class'=>'CFileLogRoute',
          'levels'=>'info,trace',
          'categories'=> 'debug.*',
          'logFile'=> date("Y-m-d").'debug.log',
         ),

    Yii框架日志操作图文与实例详解
  • 将日志写入到firebug console 中去.// chorme console 也可以用
    Yii::log("test in console" , CLogger::LEVEL_INFO , "debug");
    'log'=>array(
      'class'=>'CLogRouter',
      'routes'=>array(
        array(
          'class'=>'CWebLogRoute',
          'categories'=>'debug',
          'levels'=>'info,trace',
          'showInFireBug'=>true,
        ),

    Yii框架日志操作图文与实例详解
  • 追踪sql 查询.
    4.1 首先调整db  r s

    首先,将db 的配置调整。

    'db'=>array(
    	   //....
          'enableParamLogging'=>true,
          
    	),

    一段执行sql 的语句。
    $cmd = Yii::app()->db->createCommand();
    $sql = "select id,username from {{users}} limit 5 ";
    $cmd->setText($sql);
    $rows = $cmd->queryAll();

    //日志配置。

    'log'=>array(
      'class'=>'CLogRouter',
      'routes'=>array(
        array(
          'class'=>'CFileLogRoute',
          'categories'=>'system.db.CDbCommand.*,
          'logFile'=> date("Y-m-d").'db.log',
        ),

    Yii框架日志操作图文与实例详解

    同理,如果需要将日志写入firebug ,配置调整为即可.

    'log'=>array(
      'class'=>'CLogRouter',
      'routes'=>array(
        array(
          'class'=>'CWebLogRoute',
          'categories'=>'system.db.CDbCommand.*,
          'showInFireBug'=>true,
        ),
    Yii框架日志操作图文与实例详解

  • 直接在页面上查看数据库查询.

    5.1 db 配置设enableProfile 为true.  同四。
    配置如下。

    'log'=>array(
      'class'=>'CLogRouter',
      'routes'=>array(
        array(
          'class' => 'CProfileLogRoute',
          'levels'=>'profile,info,trace,warning,error',
        ),

    去行查询后。[使用4的查询] 结果如下图。 Yii框架日志操作图文与实例详解

  • 查看程序段中的运行性能.

    配置和5一样。
    Yii::beginProfile("t1");
      for( $i=0;$i<100000;$i++) { $t = $i;}
    Yii::endProfile("t1");

    Yii框架日志操作图文与实例详解

  • 如果希望日志追踪的更详细,

    //进入 index.php 将debug 打开
     defined('YII_DEBUG') or define('YII_DEBUG',true);

    Yii框架日志操作图文与实例详解
  • 使用第三方插件.

    8.1 去官网下载代码.

    http://www.yiiframework.com/extension/yii-debug-toolbar/

    放入 extensions 目录下
    添加配置。

    'log'=>array(
      'class'=>'CLogRouter',
      'routes'=>array(
        array(
          'class'=>'ext.yii-debug-toolbar.YiiDebugToolbarRoute',     
           'ipFilters'=>array('192.168.1.*'),
        ),

    调整数据库配置。
    'db'=>array(
    	//...
          'enableProfiling'=>true,
          'enableParamLogging'=>true,
          
    		),

    Yii框架日志操作图文与实例详解
    Yii框架日志操作图文与实例详解
    Yii框架日志操作图文与实例详解

希望本文所述对大家基于Yii框架的PHP程序设计有所帮助。

PHP 相关文章推荐
建立动态的WML站点(二)
Oct 09 PHP
PHP开发入门教程之面向对象
Dec 05 PHP
Linux下 php5 MySQL5 Apache2 phpMyAdmin ZendOptimizer安装与配置[图文]
Nov 18 PHP
php实现用户在线时间统计详解
Oct 08 PHP
PHP HTML JavaScript MySQL代码如何互相传值的方法分享
Sep 30 PHP
解析PHP无限级分类方法及代码
Jun 21 PHP
深入PHP许愿墙模块功能分析
Jun 25 PHP
PHP使用正则表达式清除超链接文本
Nov 12 PHP
preg_match_all使用心得分享
Jan 31 PHP
PHP购物车类Cart.class.php定义与用法示例
Jul 20 PHP
PHP重定向与伪静态区别
Feb 19 PHP
PHP7如何开启Opcode打造强悍性能详解
May 11 PHP
php求斐波那契数的两种实现方式【递归与递推】
Sep 09 #PHP
PHP使用 Imagick 扩展实现图片合成,圆角处理功能示例
Sep 09 #PHP
Yii框架常见缓存应用实例小结
Sep 09 #PHP
Yii框架函数简单用法分析
Sep 09 #PHP
Yii框架的路由配置方法分析
Sep 09 #PHP
PHP实现时间日期友好显示实现代码
Sep 08 #PHP
PHP中将一个字符串部分字符用星号*替代隐藏的实现代码
Sep 08 #PHP
You might like
PHP 遍历XP文件夹下所有文件
2008/11/27 PHP
PHP $_FILES中error返回值详解
2014/01/30 PHP
PHP实现正则匹配所有括号中的内容
2018/06/22 PHP
TP5框架请求响应参数实例分析
2019/10/17 PHP
基于Jquery 解决Ajax请求的页面 浏览器后退前进功能,页面刷新功能实效问题
2010/12/11 Javascript
JavaScript中json对象和string对象之间相互转化
2012/12/26 Javascript
图片动画横条广告带上下滚动的JS代码
2013/10/25 Javascript
JS将数字转换成三位逗号分隔的样式(示例代码)
2014/02/19 Javascript
node.js中的fs.readFileSync方法使用说明
2014/12/15 Javascript
贴近用户体验的Jquery日期、时间选择插件
2015/08/19 Javascript
如何使用jquery修改css中带有!important的样式属性
2016/04/28 Javascript
基于JS实现导航条flash导航条
2016/06/17 Javascript
vue中如何引入jQuery和Bootstrap
2017/04/10 jQuery
详解Node.js 命令行程序开发教程
2017/06/07 Javascript
jQuery实现的粘性滚动导航栏效果实例【附源码下载】
2017/10/19 jQuery
浅谈vue 单文件探索
2018/09/05 Javascript
JavaScript之数组扁平化详解
2019/06/03 Javascript
详解vue-router 动态路由下子页面多页共活的解决方案
2019/12/22 Javascript
JS控制下拉列表左右选择实例代码
2020/05/08 Javascript
[03:48]DOTA2完美大师赛主赛事第二日精彩集锦
2017/11/24 DOTA
关于Python中空格字符串处理的技巧总结
2017/08/10 Python
Python 高级专用类方法的实例详解
2017/09/11 Python
python实现自动发送邮件发送多人、群发、多附件的示例
2018/01/23 Python
python实现批量注册网站用户的示例
2019/02/22 Python
Python实现简单查找最长子串功能示例
2019/02/26 Python
python读取图片的方式,以及将图片以三维数组的形式输出方法
2019/07/03 Python
python使用百度文字识别功能方法详解
2019/07/23 Python
Python错误的处理方法
2020/06/23 Python
纯css3实现鼠标经过图片显示描述的动画效果
2014/09/01 HTML / CSS
Ralph Lauren拉夫·劳伦美国官网:带有浓郁美国气息的高品味时装品牌
2017/11/01 全球购物
HomeAway澳大利亚:预订你的度假屋,公寓、度假村、别墅等
2019/02/20 全球购物
冰淇淋店创业计划书范文
2013/12/27 职场文书
学习十八大报告感言
2014/02/28 职场文书
2015年党员公开承诺事项
2015/04/27 职场文书
2015年端午节活动策划书
2015/05/05 职场文书
Django给表单添加honeypot验证增加安全性
2021/05/06 Python