Prometheus 记录规则:查询快了,语义也要清楚
Prometheus 记录规则查询快了语义也要清楚一、记录规则不是为了偷懒写短查询Prometheus 查询复杂时很多团队会用 recording rules 把中间结果预计算出来。这样能减少查询压力也能让告警表达更清晰。但记录规则不是为了偷懒把 PromQL 写短而是为了把稳定语义沉淀下来。规则命名不好、维度保留不当会让后续看板和告警更难理解。好的记录规则应该表达业务含义例如服务错误率、接口 P95 延迟、实例 CPU 使用率。不要把临时查询直接固化成规则。固化之后它就会被多个看板和告警依赖改动成本会变高。二、规则链路原始指标到业务语义flowchart TD A[原始指标] -- B[PromQL 聚合] B -- C[Recording Rule] C -- D[告警规则] C -- E[Grafana 看板]记录规则要注意保留标签。保留太多标签会导致时间序列爆炸保留太少又无法定位问题。比如服务级错误率可以保留service和namespace接口级延迟可以保留route但不应保留user_id这种高基数字段。评估周期也要合理。太短会增加 Prometheus 压力太长会让告警滞后。核心告警相关规则可以 30 秒或 1 分钟容量类规则可以更长。不是所有规则都需要同一个 interval。三、规则示例命名表达层级下面是一个服务错误率记录规则示例。groups: - name: service-sli rules: - record: job:request_errors:rate5m expr: | sum by (job) (rate(http_requests_total{status~5..}[5m])) / sum by (job) (rate(http_requests_total[5m]))命名里的job:request_errors:rate5m表达了聚合维度、指标含义和窗口。团队要统一命名规范否则规则多了以后很难查。记录规则是一种公共 API命名要稳定。修改规则前要评估依赖。Grafana 看板、告警、SLO 报告可能都在用这个规则。直接改 expr 或标签会影响下游。重要规则最好走 Review。四、运维注意规则也会拖垮 Prometheus记录规则不是免费午餐。高基数、高频率、复杂正则和大范围 join 都会增加 Prometheus 压力。规则上线后要观察 Prometheus 自身的 rule evaluation duration、样本数和内存。监控系统也需要被监控。如果查询压力很大可以考虑分层 Prometheus、Thanos Ruler 或 Mimir 等方案。但在引入复杂架构前先清理无用指标、高基数标签和低价值规则。很多性能问题不是规模大而是指标治理差。最后规则要有说明文档。这个规则表示什么、用于哪些告警、窗口为什么是 5 分钟。半年后再看文档比记忆可靠。记录规则还要避免重复定义。多个团队各自写服务错误率规则窗口、标签和过滤条件略有不同最后看板数字对不上。建议把通用 SLI 规则放在统一规则库里业务团队只扩展自己的特殊指标。监控口径一致事故讨论才不会先吵数字。规则变更后也要回看告警触发情况。如果某个规则改完后告警数量暴涨或骤降必须确认是系统变化还是规则语义变了。监控规则也是生产配置。五、总结Prometheus 记录规则能提升查询性能和告警可读性但要注意语义、命名、标签维度、评估周期和自身成本。规则是监控体系的公共语言写清楚比写短更重要。

相关新闻

DMA 调试:缓存一致性问题,比传输失败更阴

DMA 调试:缓存一致性问题,比传输失败更阴

DMA 调试:缓存一致性问题,比传输失败更阴 一、深度引言:DMA 能解放 CPU,也能把调试逼疯 DMA(Direct Memory Access)是现代嵌入式系统中不可或缺的硬件机制。它让外设直接与内存交换数据,CPU 不需…

2026/7/3 1:48:18 阅读更多 →
3分钟掌握Sketchfab模型下载:免费获取高质量3D资源的完整指南

3分钟掌握Sketchfab模型下载:免费获取高质量3D资源的完整指南

3分钟掌握Sketchfab模型下载:免费获取高质量3D资源的完整指南 【免费下载链接】sketchfab sketchfab download userscipt for Tampermonkey by firefox only 项目地址: https://gitcode.com/gh_mirrors/sk/sketchfab 你是否在Sketchfab上发现了完美的3D模型&…

2026/7/3 1:48:18 阅读更多 →
Java随笔-CASAQS

Java随笔-CASAQS

一、CAS(Compare And Swap) 1. 基本概念 CAS 是一种乐观锁实现,包含三个操作数: 内存值 V(当前主内存中的值)预期值 A(线程本地记录的旧值)新值 B(要更新的值&#xff09…

2026/7/3 1:42:17 阅读更多 →

最新新闻

终极B站视频下载指南:解锁大会员4K和充电专属内容

终极B站视频下载指南:解锁大会员4K和充电专属内容

终极B站视频下载指南:解锁大会员4K和充电专属内容 【免费下载链接】bilibili-downloader B站视频下载,支持下载大会员清晰度4K,持续更新中 项目地址: https://gitcode.com/gh_mirrors/bil/bilibili-downloader 你是否曾经想要永久保存…

2026/7/3 2:44:33 阅读更多 →
Loki MCP Server -支持Claude Desktop/Claude Code/Cursor 等客户端通过自然语言查询日志

Loki MCP Server -支持Claude Desktop/Claude Code/Cursor 等客户端通过自然语言查询日志

MCP定位,技术栈,架构,项目结构,基础框架搭建,开发部署及常见问题 # Loki MCP Server - CLAUDE.md> Go 实现的 MCP Server,集成 Grafana Loki 日志查询。支持 Claude Desktop / Claude Code / Cursor 等…

2026/7/3 2:42:31 阅读更多 →
嵌套 H5 的跨端通信:iOS / Android / 小程序 / 浏览器

嵌套 H5 的跨端通信:iOS / Android / 小程序 / 浏览器

一、为什么要做“统一桥接层”? “Write once, run anywhere” 对于纯展示型 H5 是成立的。但只要涉及到业务交互,比如:调起原生登录、保存图片到相册、修改系统状态栏颜色、分享到朋友圈,浏览器标准的 Web API 根本无能为力。 …

2026/7/3 2:40:31 阅读更多 →
交叉熵损失函数实战指南:原理、陷阱与工业级调优

交叉熵损失函数实战指南:原理、陷阱与工业级调优

1. 项目概述:为什么交叉熵损失函数不是“又一个公式”,而是模型精度的隐形操盘手在机器学习项目里,你调用model.compile(losscategorical_crossentropy)可能只需要0.3秒,但背后这个看似简单的函数,却直接决定了模型是“…

2026/7/3 2:38:31 阅读更多 →
ThreadLocalMap 设计及工作原理

ThreadLocalMap 设计及工作原理

把焦点深入到 ThreadLocalMap 这个核心容器上。它是理解整个 ThreadLocal 机制的关键,也是一个精巧的、为特定场景优化的定制化哈希表。下面我从数据结构、哈希冲突解决、扩容机制和关键操作四个维度,剖析它的设计精髓。1. 数据结构:弱引用的…

2026/7/3 2:36:30 阅读更多 →
Node.js Promise.all 并行查询实战:性能提升与错误处理详解

Node.js Promise.all 并行查询实战:性能提升与错误处理详解

在 Node.js 后端开发中,我们经常需要从多个数据源(如数据库、外部 API、文件系统)并行获取数据。如果采用传统的串行 await 方式,总耗时将是所有异步操作耗时的总和,这在处理高并发或延迟敏感的业务时是无法接受的。…

2026/7/3 2:36:30 阅读更多 →

日新闻

Nginx防御TLS重协商攻击实战:从原理到配置与监控

Nginx防御TLS重协商攻击实战:从原理到配置与监控

1. 项目概述:为什么TLS重协商攻击至今仍需警惕十多年前的CVE-2011-1473,一个关于TLS/SSL协议重协商机制的漏洞,现在提起来还有必要吗?很多运维和开发朋友可能会觉得,这都老掉牙了,现代服务器和客户端不都默…

2026/7/3 0:03:59 阅读更多 →
华为防火墙双通道远程管理实战:Web与SSH配置详解

华为防火墙双通道远程管理实战:Web与SSH配置详解

1. 项目概述:为什么需要双通道远程管理防火墙?在任何一个稍具规模的企业网络里,防火墙都是那个默默守护在边界的关键角色。作为网络工程师,我们不可能每次都跑到机房,插上console线去配置它。远程管理能力,…

2026/7/3 0:03:59 阅读更多 →
AD74413R与PIC18F65K40的高精度工业数据采集方案

AD74413R与PIC18F65K40的高精度工业数据采集方案

1. 项目概述:AD74413R与PIC18F65K40的协同工作在工业自动化和精密测量领域,同时实现高精度模数转换(ADC)和数模转换(DAC)功能是许多复杂系统的核心需求。AD74413R作为一款四通道可配置模拟输入/输出器件,与PIC18F65K40微控制器的组合&#xf…

2026/7/3 0:05:59 阅读更多 →

周新闻

月新闻