2016-07-13 31 views
0

是否有工具(或gem)跟蹤或獲取狀態不是200的應用程序給出的所有響應的報告,而無需手動實現?在Rails上跟蹤不同於200的HTTP響應

+0

第一個問題是 - 爲什麼你需要它?您是否需要它來獲取API,或者捕獲任何不同於200的狀態,因爲它可能在刷新頁面時發生。所以第一個問題是 - 你爲什麼需要它? – Aleks

+0

我們的API有相當多的請求,我們的CTO詢問我們是否可以控制並遵循這些事件,即使我知道可能有這麼多不相關的案例。 @Aleks – Unfold

回答

1

您不需要工具或寶石,因爲這可以通過實現Rails中間件輕鬆完成。

由於問題是相當普遍的,那麼我會以更通用的方式回答它。 創建一箇中間件(你可以找到這個Rails的一些資源),那麼代碼就像一箇中間件模塊添加線內:

status, headers, body = @application.call(request.env) 

這行後檢查什麼的狀態響應和做任何你想要的迴應 - 在數據庫中記錄,在Airbrake等報告。

+0

只是一個方面的評論,因爲我不太清楚你的應用程序是如何組織的,並且如果你的應用程序不僅僅包含一個API,也許記住在檢查並記錄任何內容之前檢查API url是否已被調用響應。 – Aleks