pg_ash v1 发布:面向 PostgreSQL 的活动会话历史

发布于 2026-04-03,PostgresAI
相关开源软件

pg_ash 是一个用于 PostgreSQL 的活动会话历史(Active Session History, ASH)方案。它通过 pg_cron 每秒采样一次 pg_stat_activity,将编码后的快照写入分区表,并提供 32 个 SQL 函数用于等待事件分析。

主要特点:

  • 纯 SQL + PL/pgSQL 实现
  • 无需 C 扩展、无需 shared_preload_libraries、无需重启
  • 适用于支持 pg_cron 的环境,包括 RDS、Cloud SQL、AlloyDB、Azure Database for PostgreSQL、Supabase、自建环境与 Kubernetes
  • 单次采样约占用 100-200 字节,采用 TRUNCATE 轮转分区时每日存储约 30 MiB,几乎无膨胀
  • 提供 top waits、按查询查看等待画像、等待事件下钻、时间范围调查和时间线可视化等分析函数
  • 支持 PostgreSQL 14-18,采用 Apache 2.0 许可,并已接入 CI 测试

项目地址:

  • https://github.com/NikolayS/pg_ash