快速上手
十分钟内启动 pg_exporter,并在 Prometheus 中看到 PostgreSQL 指标
为 Prometheus / Victoria 打造的极致 PostgreSQL 监控体验:超过 600+ 监控指标、声明式配置 与 动态规划 能力。
| 特性 | 描述 |
|---|---|
| 全指标覆盖 | 600+ 指标覆盖 PostgreSQL(10-19+)与 pgBouncer(1.8-1.25+)的几乎全部统计视图 |
| 声明式采集 | 每个指标都来自 YAML 采集器定义——SQL 查询加执行条件,可自由增删改,无需改代码 |
| 动态规划 | 按目标的版本、主从角色、已装扩展与标签自动裁决每个采集器是否执行、执行哪个分支 |
| 自动发现 | 自动发现实例内的所有数据库并分别采集,指标以 datname 标签区分 |
| 健康检查 | /up、/primary、/replica 等端点可直接充当负载均衡器探针,实现主从流量路由 |
| 智能缓存 | 采集器级 TTL 缓存把抓取频率与查询频率解耦,探针与抓取风暴不会穿透到数据库 |
| 快照直方图 | HISTOGRAM 列类型将 SQL 快照聚合为经典 Prometheus 直方图分布 |
| 扩展感知 | 原生支持 pg_stat_statements、pg_wait_sampling、citus、timescaledb |
| 生产就绪 | 在真实环境中经过 6 年以上、12K+ 核心的实战检验 |
v1.4.0legacy/ 配置包)完整版本历史见 发布注记。
pg_exporter 的核心设计取向是「本地优先 + 可声明 + 可演进」:
postgresql:///?sslmode=disable,适配同机部署场景ttl、timeout、tags、fatal 精细控制POST/GET /reload 与 SIGHUP 信号重载(非 Windows 额外支持 SIGUSR1)/reload、/explain、/stat 会暴露配置与运行态信息,生产环境建议结合 --web.config.file 启用认证/TLS,或仅在内网暴露PG Exporter 提供多种 安装方式,适配各种基础设施:
docker run -d --name pg_exporter -p 9630:9630 -e PG_EXPORTER_URL="postgres://user:pass@host:5432/postgres" pgsty/pg_exporter:latest# 基于 RPM 的系统
sudo tee /etc/yum.repos.d/pigsty-infra.repo > /dev/null <<-'EOF'
[pigsty-infra]
name=Pigsty Infra for $basearch
baseurl=https://repo.pigsty.io/yum/infra/$basearch
enabled = 1
gpgcheck = 0
module_hotfixes=1
EOF
sudo yum makecache;
sudo yum install -y pg_exportersudo tee /etc/apt/sources.list.d/pigsty-infra.list > /dev/null <<EOF
deb [trusted=yes] https://repo.pigsty.io/apt/infra generic main
EOF
sudo apt update;
sudo apt install -y pg-exporterVERSION=$(curl -fsSL https://api.github.com/repos/pgsty/pg_exporter/releases/latest | sed -n 's/.*"tag_name": "v\([^"]*\)".*/\1/p')
wget "https://github.com/pgsty/pg_exporter/releases/download/v${VERSION}/pg_exporter-${VERSION}.linux-amd64.tar.gz"
tar -xf "pg_exporter-${VERSION}.linux-amd64.tar.gz"
sudo install "pg_exporter-${VERSION}.linux-amd64/pg_exporter" /usr/bin/
sudo install "pg_exporter-${VERSION}.linux-amd64/pg_exporter.yml" /etc/pg_exporter.yml# 从源码构建
git clone https://github.com/pgsty/pg_exporter.git
cd pg_exporter
make build几分钟内即可启动 PG Exporter,参见 快速上手:
# 最小可用启动(本地优先默认 URL)
pg_exporter
# 或显式指定目标
PG_EXPORTER_URL='postgres://user:pass@localhost:5432/postgres' pg_exporter
# 访问指标
curl http://localhost:9630/metrics
# 在线重载配置(推荐 POST)
curl -X POST http://localhost:9630/reload
通过在线演示环境体验 PG Exporter 的实际效果:https://g.pgsty.com
演示展示了由 PG Exporter 监控的真实 PostgreSQL 集群,包含:
PG Exporter 是基于 Apache License 2.0 许可的开源软件。
Copyright 2018-2026 © 冯若航 / rh@vonng.com
十分钟内启动 pg_exporter,并在 Prometheus 中看到 PostgreSQL 指标
如何下载和安装 PG Exporter
PG Exporter 的配置选项与采集器定义
PG Exporter 的 HTTP API 端点参考
生产环境部署:连接与凭据、systemd / Docker / Kubernetes、自动发现与告警
PG Exporter 版本发布历史