開發人員希望能回答「為什麼我的應用程式速度這麼慢?」這個問題。現代軟體系統是分散式且複雜的,這使得診斷影響客戶體驗的問題變得越來越困難。
我們在設計新的追蹤和指標功能時,已將這些疑慮納入考量。這些功能使 Prisma 更具可觀察性,並且更易於監控和偵錯。
透過追蹤功能,深入了解每個 Prisma 操作
Prisma 中的追蹤功能提供了 Prisma Client 執行的每個查詢的詳細視圖,包括執行每個查詢所花費的時間。這對於偵錯效能問題、識別瓶頸以及了解資料庫操作的行為非常有用。
將追蹤視覺化為瀑布圖
使用 Jaeger 或 Honeycomb 等追蹤工具,追蹤可以視覺化為如下所示的瀑布圖
Prisma 追蹤功能符合 OpenTelemetry 標準
追蹤是一個強大的工具,可以協助您追蹤請求在應用程式中的流動。這對於偵錯分散式系統特別有用,因為在分散式系統中,單個請求可能會跨越多個服務。為了充分利用追蹤的強大功能,應在整個應用程式中實作端對端追蹤。
Prisma 中的追蹤功能完全符合 OpenTelemetry 標準,因此您可以將其無縫整合到端對端應用程式追蹤設定中。這也表示您可以將追蹤資料匯出到任何與 OpenTelemetry 相容的追蹤系統,例如 Jaeger、Zipkin、Honeycomb、Datadog 等。
若要開始使用追蹤功能,請查看追蹤文件。
使用指標監控系統的健康狀況和效能
指標是一項新功能,可讓您監控 Prisma 如何與資料庫互動。指標公開了一組計數器、量表和直方圖,這些指標提供有關 Prisma 和資料庫連線狀態的資訊。我們公開的指標包括
- 執行的 Prisma Client 查詢總數 (
prisma_client_queries_total
) - 執行的 SQL 或 MongoDB 查詢總數 (
prisma_datasource_queries_total
) - 活動資料庫連線數 (
prisma_pool_connections_open
) - 包含所有已執行 Prisma Client 查詢持續時間的直方圖 (
prisma_client_queries_duration_histogram_ms_bucket
) - ...以及更多!
注意:完整的公開指標列表可在指標文件中找到。
Prisma 通常感覺像是一個黑盒子,神奇地代表您與資料庫互動。當出現問題時,這種對 Prisma 內部運作缺乏透明度的情況可能會成為問題。透過指標,我們旨在讓您更清楚地了解 Prisma 在底層執行的操作,以便您可以更輕鬆地診斷和排除問題。
指標可以與外部監控系統整合
指標可以直接由您的應用程式分析,也可以發送到外部監控系統和時間序列資料庫,例如 Prometheus 或 StatsD。與這些外部系統整合可以透過提供以下開箱即用功能,顯著提高您的監控能力
- 透過視覺化和儀表板進行即時效能監控
- 歷史資料的查詢和分析
- 針對故障和效能降低的精確且自動化的警報
例如,您可以透過將熱門的視覺化工具 Grafana 整合到您的指標管道中,來建立詳細的儀表板和圖表:
總之,指標可以協助您分析和監控應用程式的健康狀況。它還有助於識別效能問題和錯誤配置,以便您可以快速採取必要的行動。
若要開始使用指標功能,請查看指標文件。
追蹤 vs 指標 — 何時使用哪個?
追蹤有助於取得每個操作生命週期的細粒度資訊。追蹤在分散式環境中尤其有價值,因為在分散式環境中,單個請求可能會跨越多個服務。
如果您想要用於監控應用程式健康狀況和效能的彙總數值資料,請考慮使用指標。
另外請務必注意,追蹤和指標是互補的功能。它們可以一起使用以提高系統的可觀察性。
開始使用追蹤和指標
若要開始使用追蹤和指標
分享您的意見回饋
我們非常希望收到您的來信!請試用這些功能,並告訴我們您的想法。
📊 分享您對追蹤的意見回饋。
📈 分享您對指標的意見回饋。
🚀 如果您計劃將這些功能用於任務關鍵型應用程式,請聯絡我們以討論您的使用案例。
不要錯過下一篇文章!
訂閱 Prisma 電子報