博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
TP框架如何开启log日志
阅读量:6970 次
发布时间:2019-06-27

本文共 1635 字,大约阅读时间需要 5 分钟。

1. 日志的处理工作是由系统自动进行的,在开启日志记录的情况下,会记录下允许的日志级别的所有日志信息。

其中,为了性能考虑,SQL日志级别必须在调试模式开启下有效,否则就不会记录。 系统的日志记录由核心的Think\Log类及其驱动完成,提供了多种方式记录了不同的级别的日志信息。

默认情况下只是在调试模式记录日志,要在部署模式开启日志记录,必须在配置中开启LOG_RECORD参数,以及可以在应用配置文件中配置需要记录的日志级别,例如:

'LOG_RECORD' => true, // 开启日志记录

'LOG_LEVEL' =>'EMERG,ALERT,CRIT,ERR', // 只记录EMERG ALERT CRIT ERR 错误

日志级别

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

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

 

2.thinkphp 项目日志输出类的目录为:TP/Lib/Core/Log.class.

参考的thinkphp 开发手册如下:

通常日志文件的写入是自动完成的,如果我们需要在开发的过程中手动记录日志信息,可以使用Log类的方法来操作。日志文件的写入有两种方法:

一、使用Log::write 方法

Log::write 直接写入日志

用法

Log::write($message,$level=self::ERR,$type='',$destination='',$extra='')

参数

message(必须):要记录的日志信息,字符串

level(可选):要记录的日志级别,默认为ERR 错误
type(可选):日志记录方式,默认为空取LOG_TYPE配置
destination(可选):日志记录目标,默认为空自动生成或LOG_DEST配置
extra(可选):日志记录额外参数,默认为空取LOG_EXTRA配置

返回值

如:你要将$sql 变量写进日志: Log::write('调试的SQL:'.$SQL, Log::SQL);

表示用默认的日志记录方式记录调试SQL信息
二、使用Log::record和 Log::save方法

Log::record记录日志

用法

Log::record($message,$level=self::ERR,$record=false)

参数

message(必须):要记录的日志信息,字符串

level(可选):要记录的日志级别,默认为ERR 错误
record(可选):是否强制记录,默认为false表示判断LOG_LEVEL配置

返回值

Log::record方法必须结合Log::save方法才能完成日志记录,因为record方法只是把日志信息保存到内存,并没有真正写入日志,直到调用Log::save方法。

Log::save 保存记录的日志

用法

Log::save($type='',$destination='',$extra='')

参数

type(可选):日志记录方式,默认为空取LOG_TYPE配置

destination(可选):日志记录目标,默认为空自动生成或LOG_DEST配置
extra(可选):日志记录额外参数,默认为空取LOG_EXTRA配置

返回值

使用示例:

  1. Log::record('测试调试错误信息', Log::DEBUG);
  2.  Log::record('调试的SQL:'.$SQL, Log::SQL);
  3.  Log::save();

文章来源:

地址:

欢迎关注,有问题一起学习欢迎留言、评论。

转载地址:http://jiasl.baihongyu.com/

你可能感兴趣的文章
推荐12个最好的 JavaScript 图形绘制库
查看>>
关于Git的merge和rebase命令解析
查看>>
1.1 合用weightSum属性和layout_weight属性
查看>>
微软职位内部推荐-Senior Software Engineer
查看>>
------------数据库的加锁操作(上)
查看>>
关于JS APP
查看>>
来,试试PERL
查看>>
Readprocessmemory使用方法
查看>>
HDU 5154 Harry and Magical Computer bfs
查看>>
jquerymobile知识点:select的动态帮定
查看>>
Valgrind 内存泄漏工具
查看>>
【Cocos2d-Js实战教学(1)横版摇杆八方向移动】
查看>>
Android ScrollView中的组件设置android:layout_height="fill_parent"不起作用的解决办法
查看>>
CvMat and cv::Mat
查看>>
谈谈UI架构设计的演化
查看>>
当 ftp 遇上 http Proxy
查看>>
MongoDB-启动的时候出现了问题
查看>>
谈谈监控(转)
查看>>
解决SecureCRT中文显示乱码
查看>>
Bootstrap的Model源码详细注释 (转)
查看>>