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 相关文章推荐
PHP与javascript的两种交互方式
Oct 09 PHP
第五节--克隆
Nov 16 PHP
用phpmyadmin更改mysql5.0登录密码
Mar 25 PHP
PHP通用分页类page.php[仿google分页]
Aug 31 PHP
php插入中文到sqlserver 2008里出现乱码的解决办法分享
Jul 19 PHP
php ZipArchive压缩函数详解实例
Nov 06 PHP
百度站点地图(百度sitemap)生成方法分享
Jan 09 PHP
PHP图像处理之imagecreate、imagedestroy函数介绍
Nov 19 PHP
PHP扩展开发入门教程
Feb 26 PHP
详解PHP的Yii框架中日志的相关配置及使用
Dec 08 PHP
PHP基于回溯算法解决n皇后问题的方法示例
Nov 07 PHP
Thinkphp 框架配置操作之动态配置、扩展配置及批量配置实例分析
May 15 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数组遍历知识汇总(包含遍历方法、数组指针操作函数、数组遍历测速)
2014/07/05 PHP
typecho插件编写教程(二):写一个新插件
2015/05/28 PHP
php下载文件超时时间的设置方法
2016/10/06 PHP
基于php+MySql实现学生信息管理系统实例
2020/08/04 PHP
PHP基于ip2long实现IP转换整形
2020/12/11 PHP
$()JS小技巧
2007/07/21 Javascript
JavaScript 计算当天是本年本月的第几周
2009/03/22 Javascript
JavaScript类库D
2010/10/24 Javascript
一款jquery特效编写的大度宽屏焦点图切换特效的实例代码
2013/08/05 Javascript
open 动态修改img的onclick事件示例代码
2013/11/13 Javascript
jquery实现初次打开有动画效果的网页TAB切换代码
2015/09/06 Javascript
JavaScript中捕获与冒泡详解及实例
2017/02/03 Javascript
js实现3d悬浮效果
2017/02/16 Javascript
VUE中v-on:click事件中获取当前dom元素的代码
2018/08/22 Javascript
原生js实现Flappy Bird小游戏
2018/12/24 Javascript
微信小程序事件流原理解析
2019/11/27 Javascript
Python selenium如何设置等待时间
2016/09/15 Python
Pycharm技巧之代码跳转该如何回退
2017/07/16 Python
python tensorflow基于cnn实现手写数字识别
2018/01/01 Python
Python基于递归和非递归算法求两个数最大公约数、最小公倍数示例
2018/05/21 Python
对python中Matplotlib的坐标轴的坐标区间的设定实例讲解
2018/05/25 Python
python脚本实现验证码识别
2018/06/07 Python
python爬取哈尔滨天气信息
2018/07/14 Python
jupyter notebook 参数传递给shell命令行实例
2020/04/10 Python
python opencv图像处理(素描、怀旧、光照、流年、滤镜 原理及实现)
2020/12/10 Python
python中count函数知识点浅析
2020/12/17 Python
Abbacino官网:包、钱包和女士配饰
2019/04/15 全球购物
你所在的项目是如何确定版本号的
2015/12/28 面试题
如何反序的迭代一个序列?how do I iterate over a sequence in reverse order
2012/02/04 面试题
客房主管岗位职责
2013/12/09 职场文书
社团活动总结
2014/04/28 职场文书
汉语言文学毕业求职信
2014/07/17 职场文书
月度优秀员工获奖感言
2014/08/16 职场文书
2015年乡镇党务公开工作总结
2015/05/19 职场文书
Goland使用Go Modules创建/管理项目的操作
2021/05/06 Golang
CSS中理解层叠性及权重如何分配
2022/12/24 HTML / CSS