介绍
本文将介绍如何在 gRPC 微服务中添加 API Prometheus(普罗米修斯)拦截器/中间件。也就是可以在 Grafana 里做的 API 监控。
什么是 API Prometheus(普罗米修斯)拦截器/中间件?
Prometheus(普罗米修斯)拦截器会对每一个 API 请求记录 Prometheus(普罗米修斯)监控。
我们将会使用 rk-boot 来启动 gRPC 服务。
请访问如下地址获取完整教程:
- https://rkdev.info/cn
- https://rkdocs.netlify.app/cn (备用)
安装
go get github.com/rookie-ninja/rk-boot
快速开始
rk-boot 默认集成如下两个开源库。
- rk-prom 作为普罗米修斯(Prometheus)客户端启动库。
注意!为了例子能够顺滑进行,请务必在 go.mod 文件里,module 的后缀设置成 rk-demo。
例如: module github.com/your-repo/rk-demo
1.创建 boot.yaml
为了验证,我们启动了如下几个选项:
- commonService:commonService 里包含了一系列通用 API。详情
- prom:Prometheus(普罗米修斯)客户端。
- grpc-gateway:grpc 默认会启动 grpc-gateway 来提供 Restful API 服务。在验证的时候,我们可以直接发送 Restful 请求。
- prometheus 中间件:启动 prometheus 中间件。
---
grpc:
- name: greeter # Name of grpc entry
port: 8080 # Port of grpc entry
enabled: true # Enable grpc entry
commonService: