使用 Prometheus 和 Grafana 監控 Golang 應用程式
目錄
本指南將教您如何將 Golang 應用程式容器化,並使用 Prometheus 和 Grafana 進行監控。
致謝
Docker 感謝 Pradumna Saraf 對本指南的貢獻。
概覽
為了確保您的應用程式如預期般運作,監控至關重要。Prometheus 是最受歡迎的監控工具之一。Prometheus 是一個開源的監控與警報工具套件,專為可靠性和可擴展性而設計。它透過抓取目標上的 HTTP 指標端點來收集指標數據。若要視覺化這些指標,您可以使用 Grafana。Grafana 是一個開源的監控與可觀測性平台,無論指標儲存在何處,它都能讓您查詢、視覺化、設定警報並深入了解您的指標。
在本指南中,您將建立一個包含若干端點的 Golang 伺服器,以模擬實際的應用程式。接著,您將使用 Prometheus 從伺服器公開指標。最後,您將使用 Grafana 將這些指標視覺化。您將對 Golang 應用程式進行容器化,並使用 Docker Compose 檔案將所有服務(Golang、Prometheus 和 Grafana)連接起來。
您將學到什麼?
- 建立具有自定義 Prometheus 指標的 Golang 應用程式。
- 將 Golang 應用程式容器化。
- 使用 Docker Compose 執行多個服務,並將它們連接起來,以使用 Prometheus 和 Grafana 監控 Golang 應用程式。
- 使用 Grafana 儀表板將指標視覺化。
先決條件
- 預設您已具備良好的 Golang 知識。
- 您必須熟悉 Prometheus 以及如何在 Grafana 中建立儀表板。
- 您必須熟悉容器、映像檔與 Dockerfile 等 Docker 概念。如果您是 Docker 的新手,可以從 Docker 基礎指南開始學習。
下一步
您將建立一個 Golang 伺服器並使用 Prometheus 公開指標。
模組
- 了解應用程式
學習如何建立 Golang 伺服器以向 Prometheus 註冊指標。
- 容器化您的應用程式
學習如何將 Golang 應用程式容器化。
- 使用 Docker Compose 連接服務
學習如何使用 Docker Compose 連接服務,以使用 Prometheus 和 Grafana 監控 Golang 應用程式。
- 開發應用程式
學習如何使用 Docker 開發 Golang 應用程式。