使用 ClickStack 监控 PostgreSQL 指标
本指南介绍如何通过配置 OTel collector 的 PostgreSQL 接收器(receiver),使用 ClickStack 监控 PostgreSQL 性能指标。您将学会如何:
- 配置 OTel collector 以采集 PostgreSQL 指标
- 使用自定义配置部署 ClickStack
- 使用预构建的仪表板可视化 PostgreSQL 性能(事务、连接、数据库大小、缓存命中率)
如果您希望在为生产环境中的 PostgreSQL 数据库配置集成之前先进行测试,可以使用包含示例指标的演示数据集。
所需时间:10–15 分钟
集成现有 PostgreSQL
本节介绍如何通过为 ClickStack OTel collector 配置 PostgreSQL receiver,使您现有的 PostgreSQL 安装将度量指标发送到 ClickStack。
如果您希望在为自己的现有环境进行配置之前先测试 PostgreSQL 指标集成,可以在以下章节中使用我们预先配置的演示数据集进行测试。
先决条件
- 已运行的 ClickStack 实例
- 已存在的 PostgreSQL 安装(版本 9.6 或更高)
- 从 ClickStack 到 PostgreSQL 的网络连通性(默认端口 5432)
- 具有相应权限的 PostgreSQL 监控用户
创建自定义 OTel collector 配置
ClickStack 允许你通过挂载自定义配置文件并设置环境变量来扩展基础的 OpenTelemetry collector 配置。
创建 postgres-metrics.yaml:
tls: insecure: true 设置会在开发/测试环境中禁用 SSL 验证。对于启用 SSL 的生产 PostgreSQL,请删除这一行或配置正确的证书。
验证指标采集
完成配置后,登录 HyperDX 并验证指标是否开始流入:
- 进入 Metrics explorer
- 搜索以
postgresql.开头的指标(例如:postgresql.backends、postgresql.commits) - 你应能看到在配置的采集时间间隔内持续出现的指标数据点
在指标开始稳定流入后,继续前往 Dashboards and visualization(仪表板和可视化)部分导入预构建的仪表板。
演示数据集
对于希望在配置生产系统之前先测试 PostgreSQL 指标集成的用户,我们提供了一个预先生成的数据集,其中包含逼真的 PostgreSQL 指标变化模式。
此演示数据集仅包含数据库级指标,以保持示例数据轻量化。在监控真实 PostgreSQL 数据库时,表和索引指标会自动采集。
下载示例指标数据集
下载预先生成的指标文件(包含 24 小时的 PostgreSQL 指标以及逼真的变化模式):
该数据集包含逼真的模式:
- 早晨连接高峰(08:00) - 登录高峰
- 缓存性能问题(11:00) - Blocks_read 突增
- 应用 Bug(14:00-14:30) - 回滚率飙升至 15%
- 死锁事件(14:15、16:30) - 罕见死锁
仪表板和可视化
为了帮助您开始使用 ClickStack 监控 PostgreSQL,我们提供了一套关键的 PostgreSQL 指标可视化。
导入预构建的仪表板
- 打开 HyperDX,并进入 Dashboards 页面
- 点击右上角省略号菜单中的 Import Dashboard

- 上传
postgres-metrics-dashboard.json文件并点击 Finish Import

查看仪表板
系统会创建一个仪表板,并预先配置好所有可视化组件:

对于演示数据集,将时间范围设置为 2025-11-10 00:00:00 - 2025-11-11 00:00:00 (UTC)(可根据本地时区调整)。导入的仪表板默认不会指定时间范围。
故障排查
自定义配置未生效
请确认已设置环境变量:
检查自定义配置文件是否已挂载:
HyperDX 中未显示任何指标
检查 PostgreSQL 是否可访问:
查看 OTel collector 日志:
身份验证错误
确认密码是否配置正确:
直接测试凭据:
后续步骤
在完成 PostgreSQL 指标监控配置后:
- 为关键阈值(连接数限制、高回滚率、低缓存命中率)配置告警
- 启用
pg_stat_statements扩展以实现查询级监控 - 通过复制接收器配置,并为其指定不同的端点和服务名称来监控多个 PostgreSQL 实例
上线生产环境
本指南基于 ClickStack 内置的 OpenTelemetry Collector,帮助你快速完成初始配置。对于生产环境部署,我们建议运行你自己的 OTel Collector,并将数据发送到 ClickStack 的 OTLP 端点。有关生产环境配置,请参见发送 OpenTelemetry 数据。