2011-02-01 41 views
1

我在Ubuntu上運行Apache並使用PHP和Zend Framework的網站。電子郵件例外的好方法

我想通過電子郵件發送給開發者的異常信息,並想知道如何做到這一點的好方法。我不想立即通過電子郵件發送每一個例外,因爲如果發生重大事件,我們的收件箱將被淹沒。

相反,我正在尋找一種方法,可以將過去一小時的異常和錯誤一次全部通過電子郵件發送(達到一定的大小限制)。我正在考慮編寫一個cron腳本來解析Apache的error_log,但也許有比這更簡單的方法。

+0

相關型號,雖然可能不是完全匹配的,但應該是幫助未來的搜索... http://softwarerecs.stackexchange.com/questions/39001/ generic-configurable-php-probem-error-exception-handler-which-emails-me-a-rep – Mawg

回答

0

如果你不感興趣的託管解決方案,並已經在使用Zend框架,應該不會太難錯誤寫入到一個特殊的數據庫或日誌,並有一個定期運行的過程發送彙總信息。作爲一個例子,我的dayjob有一個應用程序,它以一種非常簡潔的方式來做到這一點:我們使用非常基本的日誌(非常類似於apache日誌),並且定期處理獲取日誌,電子郵件它,並截斷該文件,以便下次將不會發送舊條目。

當然,根據您要尋找的解決方案的強健程度,您可能需要轉到另一條路線。

0

我只是給一些我認爲應該有用的鏈接。

設置如果 異常是不是一個 try/catch塊中捕獲的默認異常處理程序。調用exception_handler後,執行將停止 。

設置一個用戶函數(error_handler) 一個腳本來處理錯誤。

1

我一個開源項目。它是一個票據跟蹤器,可以接收來自任何其他PHP應用程序的錯誤報告,可以檢測重複項目以避免電子郵件洪水和電子郵件開發人員。

http://elastik.sf.net/和「ErrorReportingService」模塊。

版本0.3.1將在幾天內出現,對錯誤收集機制有重大改進。

樣本的錯誤報告是在http://jarofgreen.wordpress.com/2011/01/30/tracking-errors-with-php/

+0

或者如果你想推出自己的,我確實想鏈接到我們的相關文件sourceforge存儲庫,但它似乎有問題...檢查我們的應用程序的主幹,看看mod.ErrorReportingService/includes/RemoteReportingWidget.php – James

相關問題