thinkphp 日志记录

日志记录\ThinkPHP\Lib\Think\Core\Log.class.php

1、可以在config.php中进行设置,默认为关闭状态。 'APP_DEBUG' => true

打开\ThinkPHP\Common\debug.php文件可以查看debug的默认设置如下:

return array(

'LOG_RECORD'=>true, // 进行日志记录

'LOG_RECORD_LEVEL' => array('EMERG','ALERT','CRIT','ERR','WARN','NOTIC','INFO','DEBUG','SQL'), // 允许记录的日志级别

      ThinkPHP对系统的日志按照级别来分类,包括:

  • EMERG: 严重错误,导致系统崩溃无法使用
  • ALERT: 警戒性错误, 必须被立即修改的错误
  • CRIT : 临界值错误, 超过临界值的错误,例如一天24小时,而输入的是25小时这样
  • ERR: 一般性错误
  • WARN: 警告性错误, 需要发出警告的错误
  • NOTICE:通知,程序可以运行但是还不够完美的错误
  • INFO:信息,程序输出信息
  • DEBUG: 调试,用于调试信息
  • SQL :SQL语句,该级别只在调试模式开启时有效

'DB_FIELDS_CACHE'=> false, //数据库字段缓存

'SHOW_RUN_TIME'=>true, // 运行时间显示
'SHOW_ADV_TIME'=>true, // 显示详细的运行时间
'SHOW_DB_TIMES'=>true, // 显示数据库查询和写入次数
'SHOW_CACHE_TIMES'=>true, // 显示缓存操作次数
'SHOW_USE_MEM'=>true, // 显示内存开销
'SHOW_PAGE_TRACE'=>true, // 显示页面Trace信息 由Trace文件定义和Action操作赋值
'APP_FILE_CASE' => true, // 是否检查文件的大小写 对Windows平台有效
);

注意事项:DB_FIELDS_CACHE数据库字段缓存默认关闭状态,如果开启的话,会在Runtime\Data文件夹下生成文件缓存,并且修改表之后,如新加了字段,这个缓存无法记录你的操作,需要我们手动删除一次,对表的修改才会成功。

将'APP_DEBUG' => true后,访问页面会出现如下图的DEBUG提示:

如果只想显示一部分提示信息,如运行时间,内存开销等,

可以在config.php中进行相应的设置即可,如:

//'APP_DEBUG' => true, // 调试模式开关
'SHOW_RUN_TIME' => true, //运行时间显示
'SHOW_ADV_TIME' => true, //显示详细的运行时间
'SHOW_DB_TIMES' => true, //显示数据库的操作次数
'SHOW_CACHE_TIMES'=>true, //显示缓存操作次数
'SHOW_USE_MEM' => true, //显示内存开销

提示信息如下图:

2、页面Trace信息的自定义:\ThinkPHP\Tpl\PageTrace.tpl.php

自定义的方法一:在config.php的同级目录加上一个trace.php文件

<?php
return array{
'当前的server信息'=>$_SERVER['REMOTE_ADDR'],
};
?>

自定义的方法二:在Action方法中添加

$this->trace('我很丑,但是我很温柔','5211314');

3、输出调试法:

halt('aaaaaaa');//输出aaaaaa并且中断程序执行

4、模型调试:显示SQL语句

$User=new Model('User');
$User->find(1);
echo $User->getLastSql();//输出最后执行的一条SQL语句

5、日志记录\ThinkPHP\Lib\Think\Core\Log.class.php

config.php中设置

'LOG_RECORD'=>true,//开启了日志记录
'LOG_RECORD_LEVEL'=>array('EMERG','ALERT'

posted on 2015-03-30 11:30  liuwenbohhh  阅读(3286)  评论(0编辑  收藏  举报