用 go-zero 内置 Prometheus 指标接入 Grafana,5 分钟打通微服务监控链路 用 go-zero 内置 Prometheus 指标接入 Grafana5 分钟打通微服务监控链路【免费下载链接】go-zeroA cloud-native Go microservices framework with cli tool for productivity.项目地址: https://gitcode.com/GitHub_Trending/go/go-zero需要观测 go-zero 服务的接口延迟和错误率时不必额外引入埋点库框架自带 Prometheus 兼容的指标出口和 RPC 采集拦截器配合 Grafana启动后 5 分钟内就能得到一块可查询的监控看板。整体方案一览服务启动 → 9101 端口暴露 /metrics → Prometheus 抓取 → Grafana 画图全程只用框架内置能力。配置与接入开启指标出口在你的服务配置文件中加一段 Prometheus 配置指标端口即随服务自动启动。Prometheus: Host: 0.0.0.0 # 监听地址留空则不启用 Port: 9101 # 默认 9101 Path: /metrics # 默认 /metricsServiceConf.SetUp执行时会自动调用 core/prometheus/agent.go 的 StartAgent 拉起独立 HTTP 端口见 core/service/serviceconf.go无需手写 main 逻辑。挂载采集拦截器zrpc 服务只需打开一个开关RPC 调用统计就会自动挂上。Middlewares: Prometheus: truezrpc/server.go 检测到该开关后会注册UnaryPrometheusInterceptor对每个方法记录耗时与状态码业务代码零改动指标定义见 zrpc/internal/serverinterceptors/prometheusinterceptor.go。确认指标可读启动后直接请求出口是最快的验证方式。curl -s http://localhost:9101/metrics | grep rpc_server能打印出rpc_server_requests_*开头的两个指标族说明出口与拦截器都已就位。看效果# HELP rpc_server_requests_duration_ms rpc server requests duration(ms). # TYPE rpc_server_requests_duration_ms histogram rpc_server_requests_duration_ms_bucket{method/user.UserService/GetUser,le5} 34 rpc_server_requests_duration_ms_bucket{method/user.UserService/GetUser,le50} 56 rpc_server_requests_code_total{code0,method/user.UserService/GetUser} 120这意味着GetUser 的绝大多数请求落在 50ms 桶内错误码 0成功占绝对多数。把它接进 Prometheus 后Grafana 里直接按 method 维度画 P95 延迟和错误率曲线即可。进阶把链路串起来如果你需要进一步定位问题有两个可选方向持续剖析配置里加 Profiling 段并指定 ServerAddr 指向 Pyroscope 实例internal/profiling/profiling.go 会在 CPU 负载超过阈值默认 70%时自动采集 CPU、goroutine、内存数据并上传无需重启服务分布式追踪ServiceConf.Telemetry字段支持按 OpenTelemetry 协议上报 span配合采集后端可从监控指标下钻到具体调用链。两者都是配置驱动不开启时对服务无任何影响。踩坑与调优采集间隔scrape_interval 降到 5s 以内能看更细的波动但时间序列数量翻倍先评估 Prometheus 存储量桶分布默认直方图桶覆盖 1~5000ms如果你的接口 SLA 在几十毫秒内可参照 core/metric/histogram.go 自定义更密的桶让 P95 落在有意义的区间配置字段较新版本中ServiceConf.Prometheus标注了 Deprecated 并提示改用 DevServer 段升级后请确认当前版本里指标出口的实际开启方式避免升级后看板断流。后续可探索基于rpc_server_requests_code_total写告警规则把错误率与 P95 延迟推送到值班渠道引入 eBPF 在内核层采集性能数据不依赖进程内埋点对接 OpenTelemetry 全链路标准统一 trace、metric、log 三种观测数据。【免费下载链接】go-zeroA cloud-native Go microservices framework with cli tool for productivity.项目地址: https://gitcode.com/GitHub_Trending/go/go-zero创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

最新新闻

MediaPipe 数据集实战:3 步把散图变成能训练的完整数据集

MediaPipe 数据集实战:3 步把散图变成能训练的完整数据集

MediaPipe 数据集实战:3 步把散图变成能训练的完整数据集 【免费下载链接】mediapipe Cross-platform, customizable ML solutions for live and streaming media. 项目地址: https://gitcode.com/GitHub_Trending/med/mediapipe 装标注工具装到一半报错、导…

2026/9/2 14:13:36
基于RGBD相机的视觉里程计实现:从特征匹配到三维重建与自主导航

基于RGBD相机的视觉里程计实现:从特征匹配到三维重建与自主导航

简介:本资源是一套面向计算机视觉初学者与机器人方向开发者的RGB-D视觉里程计实践项目,聚焦深度相机位姿估计、三维重建及SLAM基础流程,适用于机器人自主导航、室内外环境建图与实时轨迹追踪等典型应用场景。压缩包共17个文件,含4…

2026/9/2 14:13:36
Python提取PDF表格全攻略:从原理到实战

Python提取PDF表格全攻略:从原理到实战

相信很多做过数据处理的读者都遇到过这样的场景:拿到一份 PDF 文件,里面既有正文,又有大量数据表格,需要把里面的表格提取出来放到 Excel 里继续分析。如果直接复制 PDF 中的表格内容,粘贴到 Excel 后往往格式错乱、列…

2026/9/2 14:13:36
高度流动社会下该不该追求深度关系:辩论拆解与关系维护策略

高度流动社会下该不该追求深度关系:辩论拆解与关系维护策略

西南政法大学与中国农业大学这场晋级赛(GHI-JKL组第一场)把“深度关系”放进了“高度流动的社会”这个时代背景里,辩题是:该不该坚持追求与他人的深度关系。这个辩题不是常见的校园生活题,它把社会结构与个体选择放在同…

2026/9/2 14:13:36
基于Java Socket与多线程的极简聊天室实战解析

基于Java Socket与多线程的极简聊天室实战解析

简介:这是一份基于Java的文本聊天室入门项目,面向学习Java网络编程的学生与开发者。资源通过Socket通信与多线程处理,演示客户端与服务器建立连接、收发消息的完整流程,前端为HTMLCSS简单界面,不支持文件与图片传输。 …

2026/9/2 14:13:36
ExplorerPatcher:恢复Windows 10任务栏与开始菜单,5分钟搞定Windows 11界面不适

ExplorerPatcher:恢复Windows 10任务栏与开始菜单,5分钟搞定Windows 11界面不适

ExplorerPatcher:恢复Windows 10任务栏与开始菜单,5分钟搞定Windows 11界面不适 【免费下载链接】ExplorerPatcher This project aims to enhance the working environment on Windows 项目地址: https://gitcode.com/GitHub_Trending/ex/ExplorerPatc…

2026/9/2 14:08:36