资讯动态

Mac 当主机,Linux 当服务器(15)PromQL 入门,用「查询语言」问机器问题

发布时间:2026/10/21 2:22:19 来源:尧图企业网站定制
摘要:会查up只能说明目标在不在,回答不了「CPU 多少、内存多少、磁盘多少」。这篇带你把这三条最常用的 PromQL 写出来:rate()怎么用、为什么要1 -、avg和sum怎么选、by/without/topk有什么区别,以及那个最容易卡住的坑——查询返回空,但两边指标明明都有数据。承接上篇:Prometheus 装好了,up也会看了。老周今天要问三个问题。一、老周的「灵魂三问」小林在查询框里敲了up,看到两个1,心满意足。老周走过来看了一眼:「就这?」「我会查up了。」「那我现在问你三个问题。第一,现在 CPU 使用率是多少?第二,现在内存还剩多少?第三,磁盘用了百分之几?」小林盯着查询框,愣住了。「up只告诉你目标在不在,不告诉你机器健不健康。你要回答我刚才的问题,得学PromQL。」「PromQL?」「Prometheus Query Language,Prometheus 的查询语言。你把它理解成『跟 Prometheus 对话的语法』。你问它问题,它给你答案。监控的核心不是装软件,是能从数据里问出你想知道的东西。」二、先认识指标:node_exporter给了你什么在查询框里敲node_,下拉列表会弹出一长串:node_boot_time_seconds node_cpu_seconds_total node_disk_read_bytes_total node_filesystem_avail_bytes node_filesystem_free_bytes node_filesystem_size_bytes node_load1 / node_load5 / node_load15 node_memory_Buffers_bytes / Cached_bytes / MemAvailable_bytes / MemFree_bytes / MemTotal_bytes node_network_receive_bytes_total / transmit_bytes_total ...「好几十个。」小林说。「你不用全记。记住这五类就行:」类别指标CPUnode_cpu_seconds_total内存node_memory_MemTotal_bytes、node_memory_MemAvailable_bytes磁盘node_filesystem_size_bytes、node_filesystem_avail_bytes网络node_network_receive_bytes_total、node_network_transmit_bytes_total负载node_load1、node_load5、node_load15三、第一条 PromQL:内存使用率node_memory_MemTotal_bytesnode_memory_MemTotal_bytes{instance="localhost:9100", job="node"} 4102262784「4.1 GB。」「对。再查node_memory_MemAvailable_bytes:」/

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑