5.prometheus通过记录规则持久查询
一、查询持续性
到目前为止,我们只是在表达式浏览器中运行查询。虽然查看该查询的输出很方便,但结果仍然是临时存储在Prometheus服务器上,我们可以通过以下三种方式使查询持久化:
* 记录规则:根据查询创建新指标
* 报警规则:从查询生成警报
* 可视化:使用Grafana等仪表板可视化查询
记录规则存储在Prometheus服务器上,位于Prometheus服务器加载的文件中。规则是自动计算的,频率则由prometheus.yml配置文件的global块中的evaluation_interval参数控制。
规则文件在Prometheus配置文件的rules_files块中指定。
二、示例
在prometheus.yml文件的同一文件夹中创建一个 名为rules的子文件夹,用于保存我们的记录规则,并且为节点指标创建一个名为node1_rules.yml的文件。
[root@node1 opt]# cd /opt/prometheus/ [root@node1 prometheus]# mkdir rules [root@node1 prometheus]# cd rules/ [root@node1 rules]# vim node1_rules.yml [root@node1 rules]# cat node1_rules.yml groups: - name: node1_rules rules: - record: instance:node_cpu:avg_rate1m expr: 100-avg(irate(node_cpu_seconds_total{mode="idle"}[1m])) by (instance)*100 labels: metric_type: aggregation [root@node1 prometheus]# vim prometheus.yml # 修改prometheus.yml,添加配置 rule_files: - "rules/node1_rules.yml" [root@node1 prometheus]# docker container rm -f prometheus-server #由于之前是挂载的prometheus.yml,所以重新启动一下prometheus-server,把rules挂到容器里。 [root@node1 prometheus]# docker run --name prometheus-server -d -p 9090:9090 -v /opt/prometheus/:/etc/prometheus/ prom/prometheus
分类:
监控
标签:
监控
, prometheus
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)
· AI 智能体引爆开源社区「GitHub 热点速览」