ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

Multica 自建部署怎么开启 Prometheus 指标并保护 /metrics 端点

Multica 自建部署怎么开启 Prometheus 指标并保护 /metrics 端点 Multica 自建部署怎么开启 Prometheus 指标并保护 /metrics 端点【免费下载链接】multicaMake humans and AI agents work as one team — open-source and self-hostable.项目地址: https://gitcode.com/GitHub_Trending/mu/multica在自建 Multica 时默认情况下后端不会启动任何 Prometheus 指标监听器——只有设置了METRICS_ADDR环境变量后才会单独开出管理监听端口提供/metrics。这篇文章基于 SELF_HOSTING_ADVANCED.md 中的 Prometheus Metrics 章节说明如何开启这个监听器、验证/metrics可用以及如何避免把它暴露到公网。默认状态不监听、不服务 /metricsMETRICS_ADDR默认为空为空时不会启动任何 metrics 监听器见 环境变量参考 中METRICS_ADDR一行Prometheus metrics listen address; empty means not started。公共 API 端口不提供/metrics。面向互联网的部署应保持这一状态。HTTP 请求类指标只有在 metrics 监听器启用之后才开始累计所以开启前不存在数据开启后从零累积。方式一直接运行后端二进制文档给出的启用方式是给进程带上METRICS_ADDR环境变量启动METRICS_ADDR127.0.0.1:9090 ./server/bin/server这里的127.0.0.1:9090是文档给出的示例值表示只在本机回环地址上开放指标端口。启动后用文档中的验证命令确认监听器工作curl http://127.0.0.1:9090/metricscurl能返回指标内容即说明监听器已启用Prometheus 可以直接抓取该地址。方式二Docker Compose 自建部署自建部署使用的 docker-compose.selfhost.yml 已经把该变量透传给后端容器backend服务的environment中为METRICS_ADDR: ${METRICS_ADDR:-}默认空。仓库的 .env.example 中也有对应条目# METRICS_ADDR127.0.0.1:9090操作路径在项目根目录的.env中取消注释并设置METRICS_ADDR127.0.0.1:9090。.env.example中的注释提醒除非你用私有网络、白名单或代理认证保护了这个监听器否则绑定在回环地址上不要把这个端点通过公网的 App/API 入口暴露出去。重启后端让配置生效docker compose -f docker-compose.selfhost.yml up -d backend验证。注意 compose 默认只发布了 API 端口8080metrics 端口默认不发布到宿主机所以在宿主机上直接curl http://127.0.0.1:9090/metrics未必可达。文档给出的容器内实践是如果需要在宿主机访问用只映射到本机回环的方式发布端口见下文“保护端点”。验证抓取内容本身仍是对指标地址发起curl请求能返回指标文本即说明监听器已启用。保护 /metrics 端点文档明确说明指标数据可能暴露内部路由、流量规模、依赖状态和运行时健康情况因此对端点保护给出了以下要求优先使用私有抓取路径Docker 或 Kubernetes 部署时把 metrics 监听器绑定到内部接口并用私有网络、白名单、NetworkPolicy 或代理认证来保护。不要把/metrics挂在公共 API 端口上公共 API 端口不服务/metrics面向互联网的部署应保持如此也不要把指标端点经公网 App/API 入口对外暴露。容器内绑定0.0.0.0:9090时的限制如果确实在容器内使用METRICS_ADDR0.0.0.0:9090只把该端口发布到可信网络例如宿主机本地映射127.0.0.1:9090:9090而不是直接发布9090到所有网卡。最简的做法是保持127.0.0.1:9090这个绑定监听器只接受本机或同一容器网络命名空间内的抓取请求Prometheus 抓取器部署在同一台主机上即可工作无需任何额外端口发布。限制说明开启前采集的 HTTP 请求指标不会追溯补上指标从监听器启用时刻开始累计。端点本身没有文档提到的认证机制保护手段是网络层面的绑定地址、私有网络、NetworkPolicy、代理认证选择哪一种取决于你的部署形态文档只列出这些选项未规定必须使用某一种。与/metrics相关的完整变量说明见 环境变量参考进阶配置背景见 SELF_HOSTING_ADVANCED.md 的 Prometheus Metrics 一节。【免费下载链接】multicaMake humans and AI agents work as one team — open-source and self-hostable.项目地址: https://gitcode.com/GitHub_Trending/mu/multica创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表