项目开发阶段,除了基本编码外,性能也须要实时关注与优化。以前个人大部分项目都是使用ThinkPHP5.0以及ThinkPHP3.2,对于框架提供的日志记录和日志配置都差很少,而后使用ThinkPHP5.1的时候就吃瘪,花了十几分钟才好,因此写一下防止后面忘记了再踩坑。php
ThinkPHP5.1没有了config.php,日志配置单独提出来自成一块,叫Log.php,这个适应一下就能够。sql
在5.1之前的项目中记录我的调试的日志,都是使用use think\Log; 而后使用Log::write()。而后5.1的时候引入了facede,因此直接用之前的方式,不能使用静态调用write等方法,修改成use think\facede\Log,而后再使用。浏览器
当须要调试时,app配置中'app_debug' => true, 'app_trace' => true, 调试和追踪开启,浏览器打开会右下角出现TP的logo和运行时间,点击图标会出现调试明细。app
可是有时不会出现,可是想调试SQL以及SQL的查询速度,就须要开启日志记录,尽可能不要配置保存目录,默认在runtime下就能够,也不是由于自定义目录的写入权限问题,因此一切默认就好,先解决问题后面再研究问题缘由,Log.php配置以下。框架
return [ // 日志记录方式,支持 file socket 或者自定义驱动类 'type' => 'File', 'file_size' =>2097152, 'apart_level' => ['sql','error'], //日志的时间格式,默认是` c ` 'time_format' =>'c' ];
当开发阶段结束,不须要除了error之外级别的日志,能够在"apart_level"配置只保留"error"。socket