Clockwork 是一款可在浏览器中使用的 PHP 开发工具。 Clockwork 让您深入了解应用程序运行时 - 包括请求数据、性能指标、日志条目、数据库查询、缓存查询、redis 命令、分派事件、排队作业、渲染视图等 - 用于 HTTP 请求、命令、队列作业和测试。
该存储库包含 Clockwork 的服务器端组件。
请访问 Clockwork 网站了解详细信息。
通过 Composer 安装 Clockwork 库。
composer require itsgoingd/clockwork
恭喜你,你已经完成了!要启用更多功能(例如命令或队列作业分析),请通过vendor:publish
Artisan 命令发布配置文件。
注意:如果您使用 Laravel 路由缓存,则需要使用 Artisan 命令route:cache 刷新它。
请阅读 Clockwork 网站上的完整安装说明。
Clockwork 服务器端组件收集并存储有关您的应用程序的数据。
默认情况下,只有当您的应用程序处于调试模式时,Clockwork 才会处于活动状态。您可以选择显式启用或禁用 Clockwork,甚至将 Clockwork 设置为始终收集数据而不将其公开以供进一步分析。
默认情况下,我们会收集大量有用的数据,但您可以在配置文件中启用更多功能或禁用不需要的功能。
某些功能可能允许高级选项,例如。对于数据库查询,您可以设置慢速查询阈值或启用重复 (N+1) 查询检测。查看配置文件以了解 Clockwork 的所有功能。
有多个选项可让您选择 Clockwork 对哪些请求处于活动状态。
仅当 Clockwork 应用程序打开时,按需模式才会收集数据。您甚至可以在应用程序设置中指定要设置的秘密来收集请求。仅错误将仅记录以 4xx 和 5xx 响应结尾的请求。 “Slow only”将仅收集响应高于设置的慢速阈值的请求。您还可以通过自定义关闭来过滤收集和记录的请求。默认情况下不会收集 CORS 预检请求。
Clockwork 4.1 中的新增功能,现在还可以收集 artisan 命令、队列作业和测试,您需要在配置文件中启用此功能。
Clockwork 还收集日志消息或数据库查询等数据的堆栈跟踪。默认情况下会收集跟踪的最后 10 帧。您可以在配置文件中更改帧限制或禁用此功能。
访问/clockwork
路线可查看收集到的数据并与之交互。
该应用程序将显示所有已执行的请求,当请求不是由浏览器发出时(例如您正在为其开发 API 的移动应用程序),这非常有用。
浏览器开发工具扩展也适用于 Chrome 和 Firefox:
Clockwork 现在为您提供了一个选项,可以在应用程序中以工具栏的形式显示基本请求信息。
该工具栏完全在客户端呈现,并且需要安装一个小型 JavaScript 库。
请访问 Clockwork 网站了解更多信息。
您可以通过 Clock() 帮助器记录任何变量,从简单的字符串到数组或对象,甚至多个值:
clock (User:: first (), auth ()-> user (), $ username )
clock()
辅助函数返回它的第一个参数,因此您可以轻松地将内联调试语句添加到代码中:
User:: create ( clock ( $ request -> all ()))
如果要指定日志级别,可以使用长格式调用:
clock ()-> info ( " User { $ username } logged in! " )
时间轴为您提供应用程序运行时的可视化表示。
要将事件添加到时间线 - 以描述开始,执行跟踪的代码并完成事件。流畅的 API 可用于进一步配置事件。
// using timeline api with begin / end and fluent configuration
clock ()-> event ( ' Importing tweets ' )-> color ( ' purple ' )-> begin ();
. . .
clock ()-> event ( ' Importing tweets ' )-> end ();
或者,您可以将跟踪的代码块作为闭包执行。您还可以选择使用基于数组的配置而不是 Fluent api。
// using timeline api with run and array - based configuration
clock ()-> event ( ' Updating cache ' , [ ' color ' => ' green ' ])-> run ( function () {
. . .
});
在 Clockwork 网站上了解有关可用功能的更多信息。