首頁 > 後端開發 > php教程 > loggly更有效的PHP記錄

loggly更有效的PHP記錄

William Shakespeare
發布: 2025-02-18 08:31:09
原創
705 人瀏覽過

loggly更有效的PHP記錄

>本文由loggly贊助。感謝您支持使SitePoint成為可能的讚助商。 服務器超載,庫在發送電子郵件時拋出異常,錯誤:不幸的是,這些錯誤是每個系統的一部分。如果您負責使系統運行良好,那仍然是冷舒適的。更重要的是,我敢打賭,您已經有所有要解決它們坐在日誌文件中的數據。

>

>但是,除非您有辦法存儲,處理和分析該數據,否則可以訪問該數據。在本文中,我將通過使用適當的日誌管理解決方案(在這種情況下為loggly)使用PHP記錄庫來更有效地使用此數據。我還將展示一個如何使用日誌管理服務來存儲和分析它們的示例。

鑰匙要點

Loggly是一種流行的PHP記錄工具,可提供集中的日誌管理,實時監視,高級搜索功能,並支持廣泛的日誌格式。它可以輕鬆地與PHP集成,並且對於從多個來源生成日誌的大規模應用特別有用。

loggly可以輕鬆地與PHP日誌記錄庫和PHP框架Laravel一起集成。它也可以在雲平台Heroku上進行配置,以確保在生產環境中進行適當的日誌跟踪。

> loggly提供了一種令人印象深刻的搜索,組和可視化日誌數據的方法。它在其搜索頁面上提供了一組工具,以過濾,分析和可視化日誌。 loggly還提供了一個警報工具,每當在應用程序上發生操作時,可以配置為發送通知。
  • php記錄
  • 使用PHP登錄時,我們傾向於使用error_log和trigger_error函數,或者我們可以使用錯誤處理程序來使記錄過程更通用。如果選擇這種方式,則需要將功能包裹在某種對像中,以使事情變得更加干淨,靈活。您還可以使用Syslog函數直接將日誌轉發到系統以處理它們。
  • >
>但是,如果您必須同時登錄多個位置,或者根據錯誤級別將日誌發送到給定服務,該怎麼辦?與其使用內置工具,通常更容易使用日誌記錄庫。

>

為什麼我使用獨白

>一些推薦圖書館,例如log4php,klogger和konolog試圖解決這些常見問題,但它們有一些局限性,而獨白比它們具有很大的優勢。
  • 它是PSR-3符合的
  • 包括用於各種服務的處理程序,包括loggly。
  • >
  • 支持格式器以自定義日誌輸出。
  • >
  • >用於開發記錄的幫助者,例如browserconsolehandler登錄到瀏覽器控制台的幫助。
  • >

>確保檢查文檔以獲取有關包裝的更多詳細信息。最受歡迎的框架包括“單基因”開箱即用,因此請檢查文檔中的完整列表。如果您沒有安裝獨白,則可以使用作曲家將其添加到項目中。

openlog('php', LOG\_CONS | LOG\_NDELAY | LOG\_PID, LOG\_USER | LOG\_PERROR); syslog(LOG\_ERR, 'Error!'); syslog(LOG\_INFO, 'Hello World!'); closelog();
登入後複製
登入後複製
登入後複製

記錄的問題

>由於記錄需要寫入磁盤,進行備份和搜索文件,因此某些公司創建了一個單獨的服務來處理該作業(通常是一組腳本或應用程序,以在發生某種錯誤時搜索信息,以搜索信息)。隨著您的公司或服務擴大,這很快就會成為開發人員和分析師的噩夢。另一個更好的選擇是基於雲的日誌存儲和分析的服務,這有很大的好處,因為我們將在本文中進一步討論。

什麼是loggly?

>有幾種日誌管理服務將使存儲和分析日誌更加容易。 Loggly是最受歡迎的,它有幾種與PHP集成的方法。一旦Loggly收到日誌,您將能夠以令人印象深刻的方式進行搜索,分組和可視化數據。您可以免費嘗試。您只有在網站上的流量相當大的情況下才付款。首先,讓我們查看如何在服務器上安裝它以跟踪系統日誌。 >

使用loggly with holog

>如果您決定使用獨白軟件包庫進行記錄過程,則很容易與任何日誌管理服務(包括Loggly。

默認情況下,它帶有logghandler的loggly。

創建單一實例後,我們將把處理程序推向註冊處理程序列表,您需要如前所述提供令牌。標籤零件是可選的,但是通過相應地將日誌記錄分開是一個好主意。現在,我們準備開始使用獨白開始登錄我們的服務。

composer <span>require monolog/monolog</span>
登入後複製
laravel

loggly

由於Laravel正在使用獨白進行記錄過程,因此我們可以輕鬆地將其處理程序綁定到它。
<span>$logger = new <span>\Monolog\Logger</span>('local_test_app'); $logger->pushHandler(new <span>\Monolog\Handler\LogglyHandler</span>('YOUR_TOKEN/tag/monolog'));</span>
登入後複製
loggly更有效的PHP記錄

>在Heroku上配置loggly

>將應用程序移至生產時,您需要確保記錄跟踪正常工作。在本節中,我們將登錄到我們的Heroku應用程序。 Heroku使用日誌排水系統來幫助您將日誌轉發到外部日誌登錄服務。您可以檢查文檔以獲取有關安裝過程的更多詳細信息。

>
openlog('php', LOG\_CONS | LOG\_NDELAY | LOG\_PID, LOG\_USER | LOG\_PERROR); syslog(LOG\_ERR, 'Error!'); syslog(LOG\_INFO, 'Hello World!'); closelog();
登入後複製
登入後複製
登入後複製

>您需要使用您可以在源設置>“客戶令牌”頁面上找到的實際令牌更新令牌。如果您已經登錄了Heroku實例,則可以省略Heroku_app_name,否則您需要指定您的Heroku應用程序名稱。

>排水URL以標籤/heroku結束,這將有助於我們使用定義的標籤過濾我們的日誌,我們將稍後再討論。

loggly更有效的PHP記錄

> loggly可以輕鬆地與Heroku這樣的任何外部服務集成。查看loggly文檔以獲取日誌傳輸方法和可用腳本或庫的概述。

>用loggly

分析日誌

>現在我們已經討論瞭如何將您的日誌發送到Loggly,我們可以開始分析和使用數據。搜索頁面提供了一組工具來過濾,分析和可視化我們的日誌。 >

loggly更有效的PHP記錄>儀表板顯示了您的事件的時間表以及底部的日誌列表。頁面的頂部包含一個搜索框和一個日期範圍要過濾事件,您可以選擇最後30分鐘或指定自定義日期範圍,然後單擊搜索以驗證。

>過濾日誌

>您可以使用搜索輸入使用特定術語(例如“電子郵件”或“ event_*”)過濾數據。 loggly將在日誌條目的正文內搜索,並在頁面底部顯示結果。您還可以使用字段進行搜索,例如“ TAG:獨白”來過濾前從獨白中發送的事件。左側菜單稱為動態字段資源管理器,它可以幫助您識別可用的字段過濾器。

>讓我們以以下示例更好地了解如何分析日誌。 > loggly更有效的PHP記錄內部服務器錯誤

當您的服務器無法處理用戶的有效請求時,

會拋出內部服務器錯誤。在PHP中,可以在Apache日誌中找到有關此錯誤的詳細信息,如果您使用PHP註冊錯誤處理程序,則可以對您自己的日誌文件進行分組,因此您可以根據日誌消息進行分析並修復錯誤。

>您可以使用頁面左側的字段資源管理器小部件使用Apache 5xx狀態代碼過濾日誌。搜索可以像“ apache.status:500”一樣具體,也可以使其更通用,例如“ apache.status:[500至599]”。loggly更有效的PHP記錄

致命錯誤

在PHP中,當造成致命錯誤時,程序將停止執行並將錯誤記錄到您的系統中。由於不應該在生產中發生致命錯誤,因此Loggly提供了一種簡單的方法來跟踪來自不同來源的錯誤嚴重性。 “ syslog.appname:php”術語只會顯示PHP日誌,現在我們需要使用Syslog顯示特定嚴重性的錯誤。 Severity:錯誤術語,我們還可以指定一個範圍,例如“ syslog.seslog.severity.severity.severity.severity:[警告到錯誤警告錯誤) ]”。您可以閱讀有關文檔中可用字段列表的更多信息。

>

openlog('php', LOG\_CONS | LOG\_NDELAY | LOG\_PID, LOG\_USER | LOG\_PERROR); syslog(LOG\_ERR, 'Error!'); syslog(LOG\_INFO, 'Hello World!'); closelog();
登入後複製
登入後複製
登入後複製
>大多數時候我們將結果顯示為列表,但是您可能需要從頁面底部的圖表列表中使用另一個圖表。

loggly更有效的PHP記錄警報

>我在loggly上最喜歡的功能之一是警報工具。您可以在應用程序上發生操作時配置loggly,以將通知發送到您的電子郵件或其他服務。讓我們詳細介紹該過程。

首先,您需要創建一個新的搜索並保存它。讓我們以此搜索為例:“ syslog.appname:php and php.level:“致命錯誤”

>這將向我們顯示系統上的PHP致命錯誤列表。接下來,我們需要保存此搜索條件。單擊儀表板頁面右上角的小星星,選擇“將此搜索另存為…”項目,然後命名搜索。

loggly更有效的PHP記錄 loggly更有效的PHP記錄>現在我們可以轉到“警報”列表,然後單擊“添加新的”以創建一個新的警報。在給您的警報中給出名稱和描述後,您可以從列表中選擇保存的搜索和條件(警報在5分鐘內計數> = 1> 1)。在我的示例中,我將發送一封電子郵件通知,但是如果您有一個將錯誤傳遞給團隊進行驗證的服務,則可以將其配置為將其發佈到端點。您可以閱讀有關文檔的警報的更多信息。

>

loggly更有效的PHP記錄結論

loggly可以更改您處理日誌的方式,從regexp搜索到歸檔。該服務還具有出色的UX,並且文檔非常簡單,涵蓋了大多數可能性。您可以從免費試用器開始測試所有功能。如果您有任何疑問,請隨時將它們發佈在下面,我會盡力回答它們。

>

您如何使PHP記錄更容易?

經常詢問有關使用loggly

登錄的PHP的問題(常見問題解答)

是什麼使Loggly成為PHP日誌記錄的好選擇? loggly脫穎而出,因為其可靠的功能和易用性,它是一種功能強大的PHP記錄工具。它提供集中的日誌管理,這意味著您可以從一個地方訪問和管理所有日誌。這對於從多個來源生成日誌的大規模應用程序特別有用。 Loggly還支持廣泛的日誌格式,包括PHP,使其用於不同應用程序。它提供實時的日誌監視和分析,可以幫助迅速識別和解決問題。此外,Loggly提供了高級搜索功能,使查找特定的日誌條目更容易。

> loggly與其他php日誌記錄庫相比如何?

與其他PHP記錄庫相比,Logggly提供更多高級的庫特徵。儘管大多數庫都允許基本的日誌記錄功能,但通過提供集中式日誌管理,實時監視和高級搜索功能,loggly邁出了一步。它還支持更廣泛的日誌格式。但是,重要的是要注意的是,記錄庫的選擇很大程度上取決於您應用程序的特定需求。有些開發人員可能更喜歡較小的應用程序的簡單庫,而另一些開發人員可能需要loggly的穩健功能,以適用於較大,更複雜的應用程序。

>

> loggly易於與php?

是的,loggly是相對易於與PHP集成。它提供了一個直接的API,您可以使用該API將日誌從PHP應用程序發送到Loggly。該過程涉及安裝loggly庫,使用loggly客戶令牌配置它,然後使用庫的功能發送日誌。 loggly文檔中提供了詳細的說明和代碼示例,使集成過程甚至對於初學者而言更容易。

>

>我可以將loggly用於實時PHP日誌監視嗎? Loggly的關鍵特徵之一是其實時日誌監視功能。這意味著您可以在生成的PHP日誌中查看和分析它們,從而使您可以及時識別和解決問題。 loggly還提供警報功能,當日誌中滿足某些條件時,可以通知您。這對於檢測和響應關鍵問題特別有用。

> loggly的搜索功能如何工作?

loggly的搜索功能旨在使查找特定的日誌條目變得更容易。您可以根據各種參數搜索日誌,例如日誌級別,日誌源或日誌中包含的任何其他數據。 Loggly還支持高級搜索查詢,使您可以將多個參數和操作員組合起來,以獲得更精確的搜索結果。搜索結果以用戶友好的格式顯示,並具有進一步過濾和對日誌進行分類的選項。

> loggly的php日誌記錄有哪些替代方法?

雖然loggly是用於PHP日誌記錄的強大工具,但您可能會考慮其他一些庫。其中包括獨白,這是一個廣泛使用的PHP日誌記錄庫,並支持各種日誌處理程序; Apache log4php,PHP的多功能記錄框架;以及Klogger,一個簡單的基於文件的日誌記錄庫,用於PHP。這些圖書館中的每個圖書館都有其自己的優點和劣勢,因此最佳選擇取決於您的特定需求。

> loggly適合大規模的PHP應用程序嗎?

是的,是的,loggly非常適合用於大規模的PHP應用。其集中式日誌管理功能使得從多個來源處理日誌變得更加容易,這在大型應用程序中很常見。此外,其實時監視和高級搜索功能可以幫助管理此類應用程序生成的大量日誌。但是,重要的是要注意loggly是一項付費服務​​,因此在選擇用於大規模應用程序的記錄工具時,您需要考慮成本因素。

>我可以使用loggly用於PHP錯誤記錄嗎?

> logggly對於PHP日誌記錄的安全性如何?

loggly認真對待安全性並實施了幾種措施,並實施了一些措施保護您的日誌數據。這包括對公交和休息時的數據加密,定期的安全審計以及遵守SOC 2等行業標準。但是,與任何第三方服務一樣,重要的是要審查其安全慣例並確保它們滿足您的要求。 >

以上是loggly更有效的PHP記錄的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板