Prometheus官方提供了Go语言版本的sdk:

go get github.com/prometheus/client_golang

Go应用借助sdk可以很方便地接入Prometheus监控,接下来会从几个方面来说明:

创建一个简单的Go应用并暴露一个用于Prometheus监控的HTTP地址。

介绍主流的Golang框架接入Prometheus监控的方法,分别是 Echo、Gin 和 gRPC

Go应用需要暴露一个HTTP路由用于Prometheus server拉取监控数据,具体的HTTP路由地址可以自定义,官方建议使用 /metrics 。

一个简单的Go应用例子

package main

import (
    "github.com/prometheus/client_golang/prometheus/promhttp"
    "log"
    "net/http"
)

func main(){

    http.Handle("/metrics", promhttp.Handler())

    if err := http.ListenAndServe(":8580", nil); err != nil {
        log.Fatal(err)
    }
}

启动应用后访问 metrics 接口即可看到基础的监控指标

curl http://127.0.0.1:8580/metrics
作者:joker.liu  创建时间:2023-05-31 10:13
最后编辑:joker.liu  更新时间:2023-05-31 10:19