2016-06-21 77 views
1

環境:導軌5 RC1,紅寶石2.3Honeybadger.notify()不從控制器發送通知

寶石版本:2.6 Honeybadger

問題:

當觸發來自控制檯honeybadger通知(上生產esq環境)使用Honeybadger.notify({})通知已成功發送,並且可以在honeybadger儀表板上查看。

但是在我的ApplicationController中實現了Honeybadger,沒有任何反應。

實現:

rescue_from MyError, with: my_methodApplicationController

my_method我有下面幾行代碼

Honeybadger.notify(ex, force: true) render_formatted_error 500, Errors::MyError.new(ex)

我知道它擊中了該方法的最後一行,因爲我可以看到格式錯誤的輸出。

我猜這是因爲我在rescue_from? Honeybadger文檔聲明,您仍然可以使用手動的Honeybadger.notify方法。

force: true是我試過的解決方案之一。

+0

據我所知,該代碼行成功運行,沒有錯誤。 –

回答

0

你能嘗試以下方法:

class ApplicationController 
    rescue_from MyError, with: :my_method 

    def error_trigger 
    raise MyError.new 
    end 

private 
    def my_method(exception) 
    HoneyBadger.notify(exception, force: true) 
    render_formatted_error 500, Errors::MyError.new(exception) 
    end 
end 

在你的路由

get :error_trigger, to: 'application#error_trigger' 

有了這些到位,請訪問:http://localhost:3000/error_trigger並檢查儀表板再次

0

這是由於問題發生在我們的服務器的部署過程中。