(17)go-micro微服务Prometheus监控


目录
  • http://127.0.0.1:9090/

2.安装Grafana看板

  • 拉取镜像:
docker pull grafana/grafana
  • 运行:
docker run -d -p 3000:3000 grafana/grafana
  • 查看是否运行:
docker ps
  • 图形化界面:
    • 浏览器访问 http://127.0.0.1:3000/

五 Prometheus监控使用

  • 在micro目录下新建prometheus.go文件
go get github.com/prometheus/client_golang/prometheus/promhttp
  • 编写以下代码:
package micro

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

func PrometheusBoot(host string,port int){
   http.Handle("/metrics",promhttp.Handler())
   //启动web服务
   go func() {
      err := http.ListenAndServe(host+":"+strconv.Itoa(port),nil)
      if err!= nil{
         log.Fatal(("监控启动失败"))
      }
      log.Fatal("监控启动,端口为: "+strconv.Itoa(port))
   }()
}

六 Prometheus监控注册服务

  • 导包:
go get github.com/micro/go-plugins/wrapper/monitoring/prometheus/v2
  • 在main.go文件中写入以下代码
// 7.暴露监控地址
micro2.PrometheusBoot(micro2.ConsulInfo.Prometheus.Host, int(micro2.ConsulInfo.Prometheus.Port))
  • 注:传的参数是使用consul导入的,可以换成自定义的

  • 注册服务

//添加监控
micro.WrapHandler(prometheus.NewHandlerWrapper()),

image.png

七 Prometheus监控图形化界面

  • 运行项目

Prometheus原生看板

image.png

Grafana看板

  • 首次登录,账号:admin;密码:admin

image.png

八 最后

  • 至此,go-micro微服务Prometheus监控工作就正式完成。

  • 接下来就开始微服务ELK介绍的代码编写了,希望大家关注博主和关注专栏,第一时间获取最新内容,每篇博客都干货满满。

欢迎大家加入 夏沫の梦的学习交流群 进行学习交流经验,点击 夏沫の梦学习交流

相关