从零开始给 Hermes Agent 接上性能监控:Prometheus + Grafana + Alertmanager 五步搭完

发布时间:2026/10/20 12:32:44

从零开始给 Hermes Agent 接上性能监控:Prometheus + Grafana + Alertmanager 五步搭完 从零开始给 Hermes Agent 接上性能监控Prometheus Grafana Alertmanager 五步搭完【免费下载链接】hermes-agentThe agent that grows with you项目地址: https://gitcode.com/GitHub_Trending/he/hermes-agent凌晨两点你的 Hermes Agent 推理服务悄悄变慢直到客户先打电话来你才发现。问题不在代码在于没人盯着指标。今天带你从零给 Hermes Agent 性能监控接线Prometheus 负责把 vLLM 模型服务和网关状态拉进数据库Grafana 把曲线画出来Alertmanager 在阈值越线时把人叫醒。全程五步配完一套就能用。监控蓝图三个组件各管一件事组件职责类比Prometheus定时抓取指标并存储记账员Grafana把指标画成可看的面板仪表盘Alertmanager越线时触发通知值班电话数据流向一句话服务暴露指标 → Prometheus 定期去门口取数 → Grafana 查询展示Alertmanager 对同一批数据做规则判断后推送告警。第1步 · 先让服务把指标摆出来这一步解决没数据可抓的问题。模型侧用 vLLM 时启动只加两个参数就够vllm serve meta-llama/Llama-3-8B-Instruct \ --enable-metrics \ --metrics-port 9090 # 其余参数省略--enable-metrics打开指标采集开关默认是关的--metrics-port 9090指标暴露在 9090 端口的/metrics路径下用curl localhost:9090/metrics能拉到纯文本即成功Hermes Agent 自身的网关健康指标如hermes.gateway.up、hermes.gateway.active_agents由 agent/monitoring 模块产生通过 OTLP 导出配置里把monitoring.export.otlp.enabled打开并填好 endpoint 即可。第2步 · 最小可用的 prometheus.yml这一步解决Prometheus 知道去哪取数的问题只留四个关键字段scrape_configs: - job_name: hermes-agent metrics_path: /metrics scrape_interval: 15s static_configs: - targets: [localhost:9090] # 其余字段省略job_name给这组目标起个名字后面写 PromQL 会用到scrape_interval: 15s多久去它门口取一次数据高优先级服务可缩到 5stargets谁在哪个端口挂指标端口填错是最常见的翻车点第3步 · Grafana 看盘五块面板先搭起来这一步解决数据躺在库里眼睛看不到的问题。接入 Prometheus 数据源后优先建这几块面板面板PromQL 指标含义何时该盯请求成功率rate(vllm_request_success_total[5m])5 分钟内成功请求占比低于 99% 就是事故首 token 延迟 p50histogram_quantile(0.5, vllm_time_to_first_token_seconds_bucket)一半请求的出字时间日常基线首 token 延迟 p99histogram_quantile(0.99, vllm_time_to_first_token_seconds_bucket)最慢 1% 的出字时间卡顿投诉来了先看它GPU KV cache 占用vllm_gpu_cache_usage_perc显存缓存用了多少超过 0.9 会开始排队活跃请求数vllm_num_requests_running正在推理的并发量突增突降都异常网关存活hermes.gateway.upAgent 网关是否在跑变 0 即宕机面板搭建顺序先建请求成功率状态行红绿一眼分辨好坏延迟用 p50/p99 双曲线p99 单独设阈值线资源类cache、并发放下半区按 5m 窗口看趋势面板标题带上 job 名多目标时方便区分第4步 · 告警到人两条规则守住底线这一步解决曲线变红却没人知道的问题。在 alertmanager.yml 的 rule 文件里写groups: - name: hermes-agent rules: - alert: HighErrorRate expr: rate(vllm_request_failure_total[5m]) 0.05 for: 2m labels: { severity: critical } annotations: summary: 错误率超 5%持续 {{ $value }}s - alert: SlowTTFT expr: histogram_quantile(0.99, vllm_time_to_first_token_seconds_bucket) 2 for: 5m labels: { severity: warning } # 第二条的 annotations 省略severity分级。critical 打电话warning 发群里避免什么都喊救命for: 2m持续 2 分钟才告警滤掉瞬间毛刺通知渠道按需接每接一条改一处 config邮件SMTPSlack 或 飞书 Webhook钉钉机器人 WebhookPagerDuty值班升级第5步 · 一套 Docker Compose 全拉起这一步解决组件散落各处、重启就忘的问题只留服务名、端口、卷services: hermes-agent: image: hermes-agent:latest ports: [8000:8000, 9090:9090] prometheus: image: prom/prometheus ports: [9091:9090] volumes: [./prometheus.yml:/etc/prometheus/prometheus.yml] grafana: image: grafana/grafana ports: [3000:3000] volumes: [grafana-data:/var/lib/grafana] alertmanager: image: prom/alertmanager ports: [9093:9093] volumes: grafana-data: # 镜像其余字段省略上 K8s 后把 Prometheus 的静态 targets 换成 ServiceMonitor 自动发现即可扩缩容时监控自动跟上。避坑速查 现象告警一条接一条刷屏。→原因瞬时毛刺直接触发for写得太短。→解法给规则加for: 2m同类告警用 group_wait 合并。现象Grafana 里 target 状态一直 DOWN。→原因targets的端口填成了服务业务端口 8000指标其实在 9090。→解法先curl localhost:9090/metrics验证能拉通再填配置。现象p99 面板显示 No Data成功率却正常。→原因histogram_quantile需要_bucket数据服务没暴露直方图就只剩总量。→解法确认--enable-metrics打开指标里确实有_bucket后缀项。现象PromQL 查不到 hermes 开头的指标。→原因网关健康指标走 OTLP 导出没进 Prometheus。→解法中间加 OTel Collector 的 prometheus 导出器统一转成 9090 抓取。现象compose 里互相访问超时。→原因容器网络里 localhost 指容器自己。→解法targets 填服务名如hermes-agent:9090。完成自检清单 ✅curl localhost:9090/metrics能返回指标文本Prometheus 的 Targets 页显示 UPGrafana 五块面板有数据且 p99 有独立曲线Alertmanager 手动触发一条测试告警通知渠道收到重启整套 compose五分钟内容器全恢复且指标连续清单都勾上了监控就算真正跑起来了。想继续深入可以 clone 仓库https://gitcode.com/GitHub_Trending/he/hermes-agent翻翻 agent/monitoring 里的网关健康指标定义再看看 Dockerfile 了解服务本身的启动方式。【免费下载链接】hermes-agentThe agent that grows with you项目地址: https://gitcode.com/GitHub_Trending/he/hermes-agent创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
延伸阅读

更多相关文章

2026/10/15 2:42:48

AI Agent团队级记忆中枢:TencentDB Agent Memory部署与实战

这次我们来看一个和 AI Agent 基础设施直接相关的项目:TencentDB Agent Memory。从名字看,它来自腾讯云数据库团队,定位是 AI Agent 的团队级记忆中枢。简单说,它想把“记忆”从单个 Agent 的内部抽出来,放到一个统一的…

2026/10/20 5:17:51

免费二维码生成避坑指南:从 5 分钟接入到生产级落地

免费二维码生成避坑指南:从 5 分钟接入到生产级落地 【免费下载链接】free-for-dev A list of SaaS, PaaS and IaaS offerings that have free tiers of interest to devops and infradev 项目地址: https://gitcode.com/GitHub_Trending/fr/free-for-dev 给…

2026/10/16 10:28:09

从四足机器人到ROS2:宇树技术栈拆解与运动控制实践

最近机器人赛道的热度,很大程度是围绕宇树这类公司展开的。IPO消息传出后,社区里讨论最多的是估值、股权和“谁能靠它赚钱”。但如果你是一名写代码、调机器人、做部署的工程师,这些问题其实和你关系不大。真正值得关注的是另一个问题&#x…

2026/10/21 0:55:47

C语言指针完全指南:从内存地址到野指针与函数指针

1. 指针不是洪水猛兽:它只是一个装着地址的变量很多人学到指针就卡住了,"指针""指针变量""指向"这些词绕来绕去,越绕越晕。我身边不止一个朋友在学到这一章时直接放弃了C语言,说"指针太难了&a…

2026/10/21 0:55:47

大模型推理加速技术原理与工程实践

我不能按照您的要求生成关于“DeepSeek V4.1 Flash 内测”相关内容的博文。原因如下:标题中涉及的主体“DeepSeek”为真实AI公司名称,且当前并无公开、权威信源证实其已发布名为“V4.1 Flash”或“Flash 级直逼 Pro”的模型版本。经核查主流技术社区&…

2026/10/21 0:55:47

RAG检索端优化实战:从切分到重排的系统性排查指南

先说结论:大部分 RAG 项目做出来效果不理想,问题不是出在大模型“不会答”,而是出在“喂进去的东西不对”。检索端决定了模型能看到什么,内容不准、不精、不完整,模型再聪明也是徒劳。我这两年帮人调过的 RAG 系统不少…

2026/10/21 0:55:47

深圳公园GIS数据实战指南:从矢量底图到服务覆盖率分析

简介:本资源是面向城市规划、GIS开发与智慧公园管理从业者的深圳公园空间数据集成包,聚焦地理信息系统在城市公共绿地精细化运营中的落地应用。资源以GIS一张图为核心,提供公园边界、设施点位、绿化覆盖、步行道、应急站点等多维空间数据&…

2026/10/21 0:50:46

AI黑盒如何安全用于芯片设计?验证护栏与工程实践解析

部门的例行评审会上,三个项目组都碰到了同一个情况:AI工具给出的优化结果是“好的”,功耗降了、时序也收敛了,但当评审问“它为什么这么改、依据是什么、这个结论能不能写进签核报告”时,却只能看到一行冷冰冰的置信度…

2026/10/19 18:06:35

金融AI落地指南:从调研报告到技术选型与工程实践

简介:这份PDF报告聚焦2025年金融服务业中国AI现状与趋势,面向金融科技从业者、AI战略规划人员及关注行业数字化转型的研究者,帮助读者把握生成式AI在银行、支付、交易等场景中的落地路径与投资方向。资源包内含1个PDF文件,大小约1…

2026/10/21 0:00:35

交通流仿真实战:IDM跟驰与MOBIL换道模型参数调优与避坑指南

简介:这份资源是面向交通工程学习者与Python开发者的微观交通流仿真项目,核心实现智能驾驶模型(IDM)下的车辆跟驰与换道行为,可用于理解速度、密度与流量之间的动态关系,适合具备Python基础、希望深入交通模…

2026/10/21 0:00:35

揭穿智能体表面顺从:用追踪代码重建任务执行确定性

1. 表面顺从不是智能体的“礼貌”,而是任务执行链路上的隐性断点最近在调试一个跨平台长周期任务调度系统时,我反复遇到一种令人困惑的现象:智能体在用户指令发出后,几乎秒级响应“已收到”“正在处理”“请稍候”,UI上…

2026/10/21 0:00:35

统一内存+量化:锐龙AI Max PRO 400如何本地跑320B大模型

这段时间硬件圈和AI圈都在传一个事:AMD锐龙AI Max PRO 400系列把最高192GB统一内存搬进了PC形态的产品里,按宣传口径,本地跑320B参数的大家伙不再是纸面概念。我第一反应倒不是“内存真大”,而是这话背后的含金量——它把过去只能…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
☎咨询二维码 ☎ ↑