thinkphp6的在线bug调试下,不方便使用自带的debug模式。怎么办呢?查日志。
这里贴一个追溯案例的笔记,备用。
报错内容:
{"code":8,"message":"页面错误!请稍后再试~"}
日志在runtime目录下,类似这样:
/var/www/yixzm/runtime/index/log/202004/
目录下的日志类似于这样:
01.log 04.log 07.log 10.log 13.log 1585892267-03.log 16.log 19.log 22.log 25.log 28.log 02.log 05.log 08.log 11.log 14.log 1585892582-03.log 17.log 20.log 23.log 26.log 29.log 03.log 06.log 09.log 12.log 1585891943-03.log 15.log 18.log 21.log 24.log 27.log 30.log
可以看到每天的请求都有一个单独的日志文件。打开今天的日志文件,查询找请求日志。
日志格式类似于这样:
[2020-04-30T13:24:38+08:00][sql] SELECT
timestemp
FROMtable_name
WHEREkey
= 'i have a dream' LIMIT 1 [ RunTime:0.000795s ] [2020-04-30T13:24:38+08:00][error] [8]A non well formed numeric value encountered
其中,关键的错误是:
[error] [8]A non well formed numeric value encountered
怎么办呢?小编的问题是 timestemp 查询出来写了个TODO没处理,所以补充个 strtotime()
处理下就OK了。
这种debug模式如果测试环境质量工作做得到位,一般用不到。