跳转到主要内容

PostgreSQL + PgBouncer → Prometheus

PG Exporter

将 PostgreSQL 与 PgBouncer 指标导出到 Prometheus。用 YAML 和 SQL 定义采集器,PG Exporter 根据目标版本、角色与已安装的扩展选择查询。

v1.5.0 · 460 指标定义 · PostgreSQL 与 PgBouncer

稳定版本

从内置采集器开始

内置 SQL 查询覆盖活动会话、复制、WAL、锁、数据库对象及部分扩展。

460指标定义由内置 SQL 采集器定义查看详情
58采集器文件YAML 文件,含配置模型参考查看详情
10–19PostgreSQL默认配置包含的版本分支查看详情

为什么选择 PG Exporter

定义需要采集的指标

编写 SQL 并描述结果列,PG Exporter 负责执行查询,将结果转换为 Prometheus 指标。

01 / 声明

用 YAML + SQL 定义指标

◇ 无需重新编译即可添加指标

  • 将查询列明确映射为 GAUGE、COUNTER、HISTOGRAM 与 LABEL。
  • 为每个采集器单独设置缓存 TTL 与查询超时。
  • 从同一个配置目录加载内置与自定义采集器。
collector.yml
pg_example:
  query: SELECT count(*) AS count FROM pg_stat_activity
  metrics:
    - count:
        usage: GAUGE
        description: Number of connections

02 / 规划

为每个目标选择正确查询

◇ 按目标条件选择查询

  • 根据版本、主备角色与标签选择采集器。
  • 服务器版本有差异时,为采集器编写不同查询分支。
  • 通过 /explain 查看已选中的采集器。
查询选择规则
版本:min_version ≤ v < max_version
标签:主备角色与自定义标签
谓词:SQL 返回 true
/explain:已选中的查询

下载与部署

选择安装方式

软件包附带 systemd 服务;压缩包和容器由你管理进程;Pigsty 负责配置监控栈。

长期服务首选

Linux 软件包

通过 APT 或 YUM 安装,软件包附带 systemd 服务与配置。

比较安装方式

Linux · macOS · Windows

发布压缩包

下载适合操作系统的程序与采集器配置。

比较安装方式

amd64 · arm64

容器镜像

通过 Docker 或 Kubernetes 运行 pgsty/pg_exporter。

比较安装方式

完整集成或完全自定义

Pigsty 或源码

用 Pigsty 部署监控栈,或从源码构建 PG Exporter。

比较安装方式

采集第一组指标按快速上手安装 PG Exporter,并连接 PostgreSQL。