欢迎光临
我们一直在努力

记录 laravel 错误日志的来源文件名及行号,方便定位

最近总是看到服务器日志中出现

local.ERROR: Creating default object from empty value

但是,并不知道具体是哪里记录的,需要定位这行错误是哪里抛出来的。

> grep Log::error -r app/
app/Http/Controllers/Admin/CommentCrudController.php:            Log::error($e);
app/Http/Controllers/Admin/SmsController.php:                   \Log::error($e);
app/Http/Controllers/Admin/SmsController.php:                   \Log::error($e);
app/Http/Controllers/Admin/SmsController.php:                   \Log::error($e);
app/Http/Controllers/OrderController.php:            Log::error($result);
app/Http/Controllers/SmsController.php:                 \Log::error($e);
app/Http/Controllers/SmsController.php:                 \Log::error($e);

这样看,其实没有什么头绪。因为记录错误的地方太多了。

找到一个不错的解决方案

\Log::error(sprintf("%s - line %d - SOME ERROR INFO", __FILE__, __LINE__));

把上面的记录错误日志的地方,修改成这样就可以了,下次再出现错误,就知道具体是哪里报错了。

参考

https://stackoverflow.com/questions/39030725/laravel-5-2-get-current-line-of-log-event

赞(0)
版权归原作者所有,如有侵权请告知。达维营-前端网 » 记录 laravel 错误日志的来源文件名及行号,方便定位

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址