使用Laravel 5,我希望通過直接調用此方法觸發每次觸發Log::error
(或類似)的通知(鬆弛但無關緊要)或者通過默認ExceptionHandler
調用report
方法。我想我必須擴展默認的Laravel的日誌系統,但我不確定。 什麼是(最好的)「laravel方式」來做到這一點?(在我的整個代碼中沒有更改每個Log::error
調用)。每次發送鬆弛通知Log ::錯誤被觸發
首先,我認爲我只需要將Log Facade更改爲另一個,但它不會處理ExceptionHandler
(即由於未捕獲的異常導致的500錯誤)。另一種解決方案可能是直接在ExceptionHandler
中添加一些代碼,但如果我通過Log::error()
或其他方式報告錯誤(app('logger')->error()
,logger()->error()
等),它將不會被觸發。
你可以看看使用Slack monolog處理程序,它會自動在你的依賴關係中,你只需要設置它https://github.com/Seldaek/monolog/blob/master/src/Monolog/Handler/ SlackHandler.php 這是一個小指南,應該有所幫助http://www.sitepoint.com/logging-with-monolog-from-devtools-to-slack/#slack-handler 這種方法可能比使用Laravel Log事件,因爲它的框架不可知和消息日誌記錄可能無法在Laravel框架中引發的錯誤早期工作 –
我實際上只是在我自己的項目中找到了這個用法,所以我進行了設置。我已經詳細說明了我在答案中做了什麼。 – user3158900