ARTICLE DETAIL

资讯详情

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

Hermes Agent 监控:5 步从零搭好指标采集、看板与告警

Hermes Agent 监控:5 步从零搭好指标采集、看板与告警 Hermes Agent 监控5 步从零搭好指标采集、看板与告警【免费下载链接】hermes-agentThe agent that grows with you项目地址: https://gitcode.com/GitHub_Trending/he/hermes-agent如果你正在生产环境跑 Hermes Agent多半体会过这种时刻用户反馈响应变慢了你去看日志却回答不了几个最要命的问题——现在有多少请求在失败GPU 显存用到几成了慢在哪一个环节这就是 Hermes Agent 监控性能监控要解决的空白。读完本文你会亲手完成一套可用的监控体系一条命令暴露指标、15 秒级自动采集、Grafana 看板上墙、Alertmanager 出事主动喊你。先说清三个组件各干什么整套体系只有三个角色记住它们的分工后面配置才不会晕组件一句话职责打个比方Prometheus定时去目标机器抓指标数据水电表的抄表员Grafana把抓到的数字变成可交互看板仪表盘显示屏Alertmanager指标越线时触发并推送告警火警铃三者通过端口和配置串起来应用暴露/metrics端点 → Prometheus 按固定间隔抓取 → Grafana 连 Prometheus 画图 → Alertmanager 读同一份数据判阈值。第 1 步一键启用指标暴露指标得先长在应用上Prometheus 才有东西可抓。以 Hermes Agent MLOps 模块里最常用的 vLLM 推理服务为例启动时加上两个参数即可vllm serve meta-llama/Llama-3-8B-Instruct \ --enable-metrics \ --metrics-port 9090--enable-metrics打开指标开关--metrics-port指定指标端口9090 是惯例可换。之后访问http://localhost:9090/metrics应能看到一堆文本指标。如果你用 Docker Compose 起服务MLOps 模块自带的 vLLM 部署参考文档里已包含完整的指标暴露设置直接照抄即可不必手敲。第 2 步配置 15 秒级采集间隔Prometheus 默认只认识自己的配置。在项目里建一份prometheus.yml告诉它目标在哪scrape_configs: - job_name: hermes-agent static_configs: - targets: [localhost:9090] metrics_path: /metrics scrape_interval: 15s三个字段各管一件事targets是抓取地址容器或 K8s 环境下换成对应服务域名metrics_path是指标路径scrape_interval是采集间隔。15 秒对绝大多数 AI 服务足够把间隔和端口号记牢后面调 Grafana 会反复用到。第 3 步用 PromQL 挑出真正值得盯的指标指标端点暴露出来的东西非常多但日常盯的其实就四类。PromQL 是 Prometheus 的查询语言下面这张表直接抄进 Grafana 就能用你想知道什么查询语句说明请求成功率rate(vllm_request_success_total[5m])5 分钟内的成功请求速率首 token 延迟 p50 / p99histogram_quantile(0.5, vllm_time_to_first_token_seconds_bucket)及把 0.5 换成 0.99普通用户和极端用户分别等多久GPU 缓存占用vllm_gpu_cache_usage_perc快满时要准备扩容当前活跃请求数vllm_num_requests_running判断容量是否被打满第 4 步让看板先跑起来Grafana 侧的动作很简单先添加一个 Prometheus 数据源指向你部署的 Prometheus 地址然后新建一个AI 性能概览仪表盘按这个顺序铺面板——请求吞吐量曲线、响应时间分布p50/p99 两条线放一张图、GPU 资源使用率、错误率。顺序的意义在于一眼先看到量再看快慢最后看资源排障思路是顺着走的。把 p99 这条线设成红色阈值线超线时看板上一目了然。第 5 步给告警定两条底线Alertmanager 的规则文件按组group组织建议先只加两条跑稳后再扩错误率告警rate(vllm_request_failure_total[5m])超过 5% 且持续 2 分钟级别 critical——这是服务可能坏了要立刻有人响应慢响应告警TTFT 的 P99 超过 2 秒且持续 5 分钟级别 warning——这是体验在劣化白天处理即可。for字段很关键它要求越线持续一段时间才触发能过滤掉单次抖动。通知渠道在 Alertmanager 里独立配置邮件、Slack、PagerDuty、企业微信/钉钉都有现成集成按你团队的值班习惯选。⚠️ 避坑与进阶别把采集间隔无脑压到 5 秒。间隔越短Prometheus 存储压力和抓取 QPS 越大只对极少数高优服务值得。阈值分级避免告警风暴。同一指标建议 warning / critical 两档否则半夜会被同类告警连刷十条。复杂查询用 recording rules 预计算。像分位数这类每次都要扫 bucket 的查询预存成一条指标Grafana 加载会明显变快。部署形态别忘端口。Docker Compose 里要把 9090 一并发布K8s 环境下建议照 vLLM 部署参考文档的思路用 Service 加自动发现扩缩容时监控覆盖不丢。每季度清理一次指标。删掉没人看的、补上业务新加的监控体系会越用越准而不是越用越肿。上线前快速核对清单curl localhost:9090/metrics能看到指标输出prometheus.yml的 target 状态在 Targets 页显示为 UPGrafana 数据源测试通过p50/p99 曲线有数据错误率与 TTFT 两条告警规则均已加载Rules 页可见手动把阈值临时调低验证告警能真实收到通知渠道指定了责任人而不是发到无人看的群采集间隔与告警阈值已按业务优先级调整过一轮把这套体系跑起来之后下次再被变慢了找上门你可以先甩出看板上那几条曲线再决定要不要动代码。【免费下载链接】hermes-agentThe agent that grows with you项目地址: https://gitcode.com/GitHub_Trending/he/hermes-agent创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表