文档首页 > > 用户指南> PostgreSQL用户指南> 插件管理>

使用pg_profile_pro插件

使用pg_profile_pro插件

分享
更新时间:2021/04/23 GMT+08:00

操作场景

pg_profile_pro是一款用于监测PostgreSQL实例性能及运行状况的插件,针对SQL语句、表、索引、函数、事务、vacuum等,pg_profile_pro提供了监测数据报表,能够尽可能发现数据库存在的或潜在的性能问题。

该插件基于PostgreSQL的pg_stat_statements视图,会在用户的实例中创建历史统计,并生成统计样本,定期的统计样本用于生成监测报告,帮助识别最耗费资源的活动等。

约束条件

仅PostgreSQL 12支持。

操作步骤

  1. root用户连接postgres数据库,获取样本列表。

    # psql --host=<RDS_ADDRESS> --port=<DB_PORT>--dbname=postgres --username=root -c "select * from profile.show_samples();"

    表1 参数说明

    参数

    说明

    RDS_ADDRESS

    RDS实例的IP地址。

    DB_PORT

    RDS数据库实例的端口。

    根据提示输入root用户密码。

    Password for user root:

    回显结果示例如下:

     sample |      sample_time       | dbstats_reset | clustats_reset | archstats_reset
    --------+------------------------+---------------+----------------+-----------------
          1 | 2021-04-02 17:15:49+08 |               |                |
          2 | 2021-04-02 17:25:57+08 |               |                |
          3 | 2021-04-02 17:36:04+08 |               |                |
    (3 rows)

    请以实际查询结果为准。

  2. 以root用户连接postgres数据库,参考以下方式获取报告。

    方式一:通过样本ID获取报告

    # psql --host=<RDS_ADDRESS> --port=<DB_PORT> --dbname=postgres --username=root -Aqtc "select profile.get_report(<sample_start_id>, <sample_end_id>)" -o <filename>.html
    表2 参数说明

    参数

    说明

    RDS_ADDRESS

    RDS实例的IP地址。

    DB_PORT

    RDS数据库实例的端口。

    sample_start_id

    报告包含起始样本ID。

    sample_end_id

    报告包含结束样本ID。

    filename

    报告内容保存的文件名,支持指定相对路径或绝对路径。

    其中sample_start_id 必须小于sample_end_id,否则无法生成报告。

    方法二:通过指定时间段获取报告

    # psql --host=<RDS_ADDRESS> --port=<DB_PORT> --dbname=postgres --username=root -Aqtc "select profile.get_report(tstzrange('sample_start_time', 'sample_end_time'))" -o <filename>.html

    表3 参数说明

    参数

    说明

    RDS_ADDRESS

    RDS实例的IP地址。

    DB_PORT

    RDS数据库实例的端口。

    sample_start_time

    报告包含起始时间。

    sample_end_time

    报告包含结束时间。

    filename

    报告内容保存的文件名,支持指定相对路径或绝对路径。

    目前相关参数保持默认值,详情如下:

    • 采样周期(单位:分钟):10
    • 采样保留时间(单位:天):7
    • 显示记录数:20

报告示例

报告由三部分组成,包含标题、目录和报表。

  • 标题

    报告标题包含以下内容:报告起止样本ID、pg_profile_pro内核版本、服务名称、报告起止时间。

    图1 报告标题
  • 目录

    每层目录分别链接一个报表,用户可以通过目录总览报告中所有报表,也可通过单击链接查看报表内容。

    如下图所示:

  • 报表

    报告呈现丰富的报表,从不同的维度、关注点来展现数据库的性能情况。

    • 在每个报表后方会针对该报表关注点的提出建议。
      图2 报表及建议
    • 在报表中,将鼠标悬停在列标题上,可以看到对列标题的注解(中英文)。
      图3 列标题注解
分享:

    相关文档

    相关产品