调试

用户可以根据自己的需要,通过修改实例数据目录下的postgresql.conf文件中特定的配置参数来控制日志的输出,从而更好的了解数据库的运行状态。

可调整的配置参数请参见表1

表 1 配置参数

参数名称

描述

取值范围

备注

client_min_messages

配置发送到客户端信息的级别。

  • DEBUG5
  • DEBUG4
  • DEBUG3
  • DEBUG2
  • DEBUG1
  • LOG
  • NOTICE
  • WARNING
  • ERROR
  • FATAL
  • PANIC

默认值:NOTICE 。

设置级别后,发送到客户端的信息包含所设级别及以下所有低级别会发送的信息。级别越低,发送的信息越少。

log_min_messages

配置写到服务器日志里信息的级别。

  • DEBUG5
  • DEBUG4
  • DEBUG3
  • DEBUG2
  • DEBUG1
  • INFO
  • NOTICE
  • WARNING
  • ERROR
  • LOG
  • FATAL
  • PANIC

默认值:WARNING。

指定某一级别后,写到日志的信息包含所有更高级别会输出的信息。级别越高,服务器日志的信息越少。

log_min_error_statement

配置写到服务器日志中错误SQL语句的级别。

  • DEBUG5
  • DEBUG4
  • DEBUG3
  • DEBUG2
  • DEBUG1
  • INFO
  • NOTICE
  • WARNING
  • ERROR
  • FATAL
  • PANIC

缺省值:ERROR。

所有导致一个特定级别(或者更高级别)错误的SQL语句都将记录在服务器日志中。

只有系统管理员可以修改该参数。

log_min_duration_statement

配置语句执行持续的最短时间。如果某个语句的持续时间大于或者等于设置的毫秒数,则会在日志中记录该语句及其持续时间。打开这个选项可以方便地跟踪需要优化的查询。

INT类型。

默认值:30min。

单位:毫秒。

设置为-1表示关闭这个功能。

只有系统管理员可以修改该参数。

log_connections/log_disconnections

配置是否在每次会话连接或结束时向服务器日志里打印一条信息。

  • on:每次会话连接或结束时向日志里打印一条信息。
  • off:每次会话连接或结束时不向日志里打印信息。

默认值:off。

-

log_duration

配置是否记录每个已完成语句的持续时间。

  • on:记录每个已完成语句的持续时间。
  • off:不记录已完成语句的持续时间。

默认值:on 。

只有系统管理员可以修改该参数。

log_statement

配置日志中记录哪些SQL语句。

  • none:不记录任何SQL语句。
  • ddl:记录数据定义语句。
  • mod:记录数据定义语句和数据操作语句。
  • all :记录所有语句。

默认值: none。

只有系统管理员可以修改该参数。

log_hostname

配置是否记录主机名。

  • on:记录主机名。
  • off:不记录主机名。

默认值:off。

缺省时,连接日志只记录所连接主机的IP地址。打开这个选项会同时记录主机名。

该参数同时影响 查看审计结果GS_WLM_SESSION_HISTORYPG_STAT_ACTIVITYlog_line_prefix参数。

上表有关参数级别的说明请参见表2

表 2 日志级别参数说明

级别

说明

DEBUG[1-5]

提供开发人员使用的信息。5级为最高级别,依次类推,1级为最低级别。

INFO

提供用户隐含要求的信息。如在VACUUM VERBOSE过程中的信息。

NOTICE

提供可能对用户有用的信息。如长标识符的截断,作为主键一部分创建的索引。

WARNING

提供给用户的警告。如在事务块范围之外的COMMIT。

ERROR

报告导致当前命令退出的错误。

LOG

报告一些管理员感兴趣的信息。如检查点活跃性。

FATAL

报告导致当前会话终止的原因。

PANIC

报告导致所有会话退出的原因。