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 網站上了解有關可用功能的更多資訊。