Prometheus UI #

一、UI概述 #

1.1 访问Prometheus UI #

text
访问地址:

http://localhost:9090

默认端口:9090

功能模块:
├── Graph:表达式查询和图形展示
├── Alerts:告警规则和状态
├── Status:系统状态信息
└── Help:帮助文档

1.2 UI功能 #

text
Prometheus UI功能:

┌─────────────────────────────────────────────┐
│ 1. 表达式浏览器                             │
├─────────────────────────────────────────────┤
│ • 执行PromQL查询                            │
│ • 查看即时和范围查询结果                    │
│ • 图形化展示数据                            │
└─────────────────────────────────────────────┘

┌─────────────────────────────────────────────┐
│ 2. 告警管理                                 │
├─────────────────────────────────────────────┤
│ • 查看告警规则                              │
│ • 查看告警状态                              │
│ • 查看告警历史                              │
└─────────────────────────────────────────────┘

┌─────────────────────────────────────────────┐
│ 3. 系统状态                                 │
├─────────────────────────────────────────────┤
│ • 查看配置信息                              │
│ • 查看目标状态                              │
│ • 查看服务发现                              │
│ • 查看运行时信息                            │
└─────────────────────────────────────────────┘

二、表达式浏览器 #

2.1 基本查询 #

text
表达式浏览器使用:

1. 输入PromQL表达式
2. 选择查询类型(即时/范围)
3. 执行查询
4. 查看结果(表格/图形)

示例查询:

# 查看所有实例状态
up

# 查看CPU使用率
100 - avg(irate(node_cpu_seconds_total{mode="idle"}[5m])) * 100

# 查看内存使用率
(1 - node_memory_MemAvailable_bytes / node_memory_MemTotal_bytes) * 100

# 查看请求速率
rate(http_requests_total[5m])

2.2 查询选项 #

text
查询选项:

┌─────────────────────────────────────────────┐
│ 时间范围                                    │
├─────────────────────────────────────────────┤
│ • 5m, 15m, 30m, 1h, 3h, 6h, 12h            │
│ • 1d, 2d, 7d, 30d                          │
│ • 自定义范围                                │
└─────────────────────────────────────────────┘

┌─────────────────────────────────────────────┐
│ 分辨率                                      │
├─────────────────────────────────────────────┤
│ • 自动                                      │
│ • 手动设置步长                              │
└─────────────────────────────────────────────┘

┌─────────────────────────────────────────────┐
│ 输出格式                                    │
├─────────────────────────────────────────────┤
│ • 表格                                      │
│ • 图形                                      │
└─────────────────────────────────────────────┘

2.3 图形功能 #

text
图形功能:

┌─────────────────────────────────────────────┐
│ 交互功能                                    │
├─────────────────────────────────────────────┤
│ • 缩放:选择区域放大                        │
│ • 平移:拖动查看不同时间段                  │
│ • 重置:恢复原始视图                        │
└─────────────────────────────────────────────┘

┌─────────────────────────────────────────────┐
│ 图例                                        │
├─────────────────────────────────────────────┤
│ • 显示/隐藏图例                             │
│ • 点击图例显示/隐藏系列                     │
│ • 悬停显示数值                              │
└─────────────────────────────────────────────┘

┌─────────────────────────────────────────────┐
│ 导出                                        │
├─────────────────────────────────────────────┤
│ • 分享链接                                  │
│ • 下载PNG图片                               │
│ • 复制查询URL                               │
└─────────────────────────────────────────────┘

三、告警页面 #

3.1 查看告警规则 #

text
访问路径:/alerts

显示内容:
├── 规则组列表
├── 每个规则的名称
├── 规则状态(inactive/pending/firing)
├── 规则表达式
├── 标签和注释
└── 持续时间

3.2 告警状态 #

text
告警状态颜色:

┌─────────────────────────────────────────────┐
│ 绿色:inactive                              │
├─────────────────────────────────────────────┤
│ • 告警条件不满足                            │
│ • 正常状态                                  │
└─────────────────────────────────────────────┘

┌─────────────────────────────────────────────┐
│ 黄色:pending                               │
├─────────────────────────────────────────────┤
│ • 告警条件满足                              │
│ • 等待持续时间                              │
└─────────────────────────────────────────────┘

┌─────────────────────────────────────────────┐
│ 红色:firing                                │
├─────────────────────────────────────────────┤
│ • 告警已触发                                │
│ • 已发送到Alertmanager                      │
└─────────────────────────────────────────────┘

四、状态页面 #

4.1 目标状态 #

text
访问路径:/targets

显示内容:
├── Job名称
├── 目标地址
├── 健康状态(UP/DOWN)
├── 最后采集时间
├── 最后错误信息
└── 标签信息

状态颜色:
• 绿色:UP(正常)
• 红色:DOWN(异常)

4.2 配置信息 #

text
访问路径:/config

显示内容:
├── 全局配置
├── 告警管理器配置
├── 规则文件
└── 采集配置

4.3 运行时信息 #

text
访问路径:/status

显示内容:
├── 启动时间
├── 运行时长
├── 数据保留时间
├── 存储使用量
├── 查询统计
├── 采集统计
└── 内存使用

4.4 服务发现 #

text
访问路径:/service-discovery

显示内容:
├── 发现的目标
├── 标签信息
├── 发现状态
└── 错误信息

五、API使用 #

5.1 即时查询API #

bash
# 即时查询
curl 'http://localhost:9090/api/v1/query?query=up'

# 带时间参数
curl 'http://localhost:9090/api/v1/query?query=up&time=1700000000'

# 带超时参数
curl 'http://localhost:9090/api/v1/query?query=up&timeout=30s'

5.2 范围查询API #

bash
# 范围查询
curl 'http://localhost:9090/api/v1/query_range?query=up&start=1700000000&end=1700003600&step=15s'

# 使用时间字符串
curl 'http://localhost:9090/api/v1/query_range?query=up&start=2024-01-01T00:00:00Z&end=2024-01-01T01:00:00Z&step=15s'

5.3 元数据API #

bash
# 查看标签名
curl 'http://localhost:9090/api/v1/labels'

# 查看标签值
curl 'http://localhost:9090/api/v1/label/job/values'

# 查看指标元数据
curl 'http://localhost:9090/api/v1/metadata'

# 查看目标
curl 'http://localhost:9090/api/v1/targets'

# 查看告警规则
curl 'http://localhost:9090/api/v1/rules'

# 查看告警
curl 'http://localhost:9090/api/v1/alerts'

六、总结 #

Prometheus UI功能:

功能 路径 说明
表达式浏览器 /graph 执行PromQL查询
告警 /alerts 查看告警规则
目标 /targets 查看采集目标
配置 /config 查看配置信息
状态 /status 查看运行状态

常用API:

API 说明
/api/v1/query 即时查询
/api/v1/query_range 范围查询
/api/v1/labels 标签列表
/api/v1/targets 目标列表

下一步,让我们学习Grafana集成!

最后更新:2026-03-27