收集燒瓶應用程序的所有HTTP請求的指標的最佳方式是什麼?如何在Flask應用程序中收集性能指標?
事情我想測量是:
- 延遲 - 時間爲每個請求。
- 率 - 每分鐘等
- 沒有失敗的請求數量 - 如果有失敗,有多少等
我也想組請求作爲一個可變的路徑。例如,對路由「/ resource /」的所有請求應該針對名爲「RESOURCE」的度量標準進行度量,而不是針對每個資源單獨進行度量。
我打算通過編寫一個裝飾器來做到這一點。缺點是我需要爲每個方法添加裝飾器。 Flask可以提供鉤子來自動測量這些方法嗎?
這不應該在應用程序級別上做,而應該在Web服務器級別上做。不,內置的web服務器不是你應該在生產中使用的東西。 – ThiefMaster
我想在框架(flask/wsgi)級別執行此操作。我沒有使用內置的網絡服務器。 – sheki
@ThiefMaster在應用程序中收集指標並將它們導出到Prometheus是一個有效的解決方案 - WSGI服務器或代理沒有所有重要的信息,您無法分割用戶,收集業務指標,通過視圖分開速度(僅通過URL解析)等等。這種方法有很多優點。 – analytik