记录Laravel中的操作和执行时间

时间:2015-09-29 08:58:21

标签: logging laravel-5

我想记录来自我网站的每个请求,包含所有参数以及生成响应所需的时间。该网站建在Laravel 5.我确实尝试了不同的方法,但没有运气。我的主要问题是如何获得总执行时间。

谢谢

3 个答案:

答案 0 :(得分:2)

您可以使用Terminable Middleware在已将HTTP响应发送到浏览器后对其进行记录。

要获得总时间,您可以将const string& acc的结果与laravel常数microtime(true)进行比较。该常量定义在LARAVEL_START,即框架的入口点

答案 1 :(得分:0)

  • Blackfire https://blackfire.io/)。

    它非常直接安装它会告诉你所有的 函数调用以及从中生成响应所需的时间。 这将包括处理器处理+ DB查询等的时间。

  • Laravel调试栏(对API不太方便,但是 普通的laravel应用程序非常适用于此)

    https://github.com/barryvdh/laravel-debugbar

两种顶级解决方案都非常缺乏设置,只需要很少或根本不需要设置。

还有另一种选择,但我认为它会非常复杂,你可能需要自己构建完整的堆栈(不推荐)。这是可以做的事情

我不建议你选择最后一个选项。如果您试图找出哪条路线速度最慢,最好启用apache / Nginx的访问日志,并使用blackfire分析运行这些URL +参数,以了解URL缓慢的原因。

答案 2 :(得分:0)

这样做的一种方法是直接向您的应用添加中间件,该应用会监听并捕获您应用处理的所有请求和响应。然后它将日志转储到文本文件或将其发送到外部服务。

请参阅有关主题的the article