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 相关文章推荐
IIS6.0+PHP5.x+MySQL5.x+Zend3.0x+GD+phpMyAdmin2.8x通用安装实例(已经完成)
Dec 06 PHP
PHP获取用户的浏览器与操作系统信息的代码
Sep 04 PHP
PHP ? EasyUI DataGrid 资料取的方式介绍
Nov 07 PHP
php ZipArchive压缩函数详解实例
Nov 06 PHP
php利用curl抓取新浪微博内容示例
Apr 27 PHP
PHP5多态性与动态绑定介绍
Apr 03 PHP
php生成PDF格式文件并且加密
Jun 22 PHP
php截取视频指定帧为图片
May 16 PHP
PHP+MYSQL实现读写分离简单实战
Mar 13 PHP
PHP实现将优酷土豆腾讯视频html地址转换成flash swf地址的方法
Aug 04 PHP
PHP实现数组转JSon和JSon转数组的方法示例
Jun 14 PHP
laravel 关联关系遍历数组的例子
Oct 10 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下过滤HTML代码的函数
2007/12/10 PHP
Laravel5框架自定义错误页面配置操作示例
2019/04/17 PHP
js/ajax跨越访问-jsonp的原理和实例(javascript和jquery实现代码)
2012/12/27 Javascript
Jquery实现控件的隐藏和显示实例
2014/02/08 Javascript
JavaScript获取页面上被选中文字的方法技巧
2015/03/13 Javascript
pace.js页面加载进度条插件
2015/09/29 Javascript
JS模拟Dialog弹出浮动框效果代码
2015/10/16 Javascript
基于javascript实现漂亮的页面过渡动画效果附源码下载
2015/10/26 Javascript
解析javascript瀑布流原理实现图片滚动加载
2016/03/10 Javascript
JavaScript中数组去除重复的三种方法
2016/04/22 Javascript
jQuery+CSS实现一个侧滑导航菜单代码
2016/05/09 Javascript
js简单实现调整网页字体大小的方法
2016/07/23 Javascript
通过原生JS实现为元素添加事件的方法
2016/11/23 Javascript
JavaScript数据结构之二叉树的查找算法示例
2017/04/13 Javascript
jquery实现的放大镜效果示例
2020/02/24 jQuery
[02:51]DOTA2战队出征照拍摄花絮 TI3明星化身时尚男模
2013/07/22 DOTA
Python基于pycrypto实现的AES加密和解密算法示例
2018/04/10 Python
python 反向输出字符串的方法
2018/07/16 Python
PHP统计代码行数的小代码
2019/09/19 Python
python 使用cx-freeze打包程序的实现
2020/03/14 Python
DC Shoes官网:美国滑板鞋和服饰品牌
2017/09/03 全球购物
英国现代市场:ARKET
2019/04/10 全球购物
Nike俄罗斯官方网站:Nike RU
2021/03/05 全球购物
物业保安员岗位职责
2014/03/14 职场文书
大学生感恩父母演讲稿
2014/08/28 职场文书
大学生毕业个人总结
2015/02/15 职场文书
党校学习个人总结
2015/02/15 职场文书
导师工作推荐信
2015/03/27 职场文书
2015年为民办实事工作总结
2015/05/26 职场文书
2015新员工工作总结范文
2015/10/15 职场文书
2016幼儿园教师年度考核评语
2015/12/01 职场文书
浅谈Redis缓冲区机制
2022/06/05 Redis
Android学习之BottomSheetDialog组件的使用
2022/06/21 Java/Android
详解apache编译安装httpd-2.4.54及三种风格的init程序特点和区别
2022/07/15 Servers
centos环境下nginx高可用集群的搭建指南
2022/07/23 Servers
蓝牙耳机怎么连接电脑win11? Win11蓝牙耳机连接电脑的技巧
2023/01/09 数码科技