0
我正在Sinatra編寫一個API,我想將進入我的服務的請求記錄到數據庫中的表中。我想包括以下信息:將Ruby API請求信息記錄到數據庫
- 日期/時間
- 端點
- 的User-Agent
- IP地址
- 有效載荷
什麼是這裏最好的方法呢?我怎樣才能挖掘這些並將它們保存下來?也許有一個我不知道的寶石。
我正在Sinatra編寫一個API,我想將進入我的服務的請求記錄到數據庫中的表中。我想包括以下信息:將Ruby API請求信息記錄到數據庫
什麼是這裏最好的方法呢?我怎樣才能挖掘這些並將它們保存下來?也許有一個我不知道的寶石。
我敢肯定有一種方法與Logger
掛鉤這件事,但可能做這將是在after
block最簡單的方法,如:
after do
# assuming you're using something like AR
LogObject.create({
time: Time.now,
req_path: request.path_info
# ...
})
end
見How to dump an HTTP request from within Sinatra?,對於一堆信息的你可以從request
對象中獲得。