更新时间:2026-09-23 GMT+08:00

记录日志的时间

client_min_messages

参数说明:控制发送到客户端的消息级别。每个级别都包含排在它后面的所有级别中的信息。级别越低,发送给客户端的消息就越少。

参数类型:USERSET

当client_min_messages和log_min_messages取相同值时,其值所代表的级别不同。

取值范围:枚举类型,有效值有debug5、debug4、debug3、debug2、debug1、info、log、notice、warning、error。参数的详细信息请参见表1。

默认值:notice

log_min_messages

参数说明:控制写到服务器日志文件中的消息级别。每个级别都包含排在它后面的所有级别中的信息。级别越低,服务器运行日志中记录的消息就越少。

参数类型:SUSET

当client_min_messages和log_min_messages取相同值log时所代表的消息级别不同。

取值范围:枚举类型,有效值有debug5、debug4、debug3、debug2、debug1、info、log、notice、warning、error、fatal、panic。参数的详细信息请参见表1。

默认值:warning

log_min_error_statement

参数说明:控制在服务器日志中记录错误的SQL语句。

参数类型:SUSET

取值范围:枚举类型,有效值有debug5、debug4、debug3、debug2、debug1、info、log、notice、warning、error、fatal、panic。参数的详细信息请参见表1。

  • 设置为error ,表示导致错误、日志消息、致命错误、panic的语句都将被记录。
  • 设置为panic,表示关闭此特性。

默认值:error

log_min_duration_statement

参数说明:当SQL语句的执行时间大于等于该参数设置的时间时,系统会自动把该语句及其实际执行时间记录到数据库日志中。通过该参数可跟踪需要优化的查询语句。对于使用扩展查询协议的客户端,语法分析、绑定、执行各步骤的耗时将被分别记录。

参数类型:SUSET

取值范围:整型,-1 ~ INT_MAX,单位为毫秒(ms)。

  • -1,表示关闭此参数功能。
  • 0,表示记录所有执行的SQL语句及其耗时。
  • 大于0,表示根据参数设定时间阈值进行记录。例如,设置为1000时,表示记录执行时间超过1000毫秒的所有SQL语句。

默认值:30min

当该参数与log_statement同时使用时,已经被log_statement记录的语句文本不会被重复记录。在没有使用syslog情况下,推荐使用log_line_prefix记录PID或会话ID,以便将当前语句与其最终的持续时间消息关联。

backtrace_min_messages

参数说明:控制当产生该设置参数级别相等或更高级别的信息时,会打印函数的堆栈信息到服务器日志文件中。

参数类型:SUSET

取值范围:枚举类型

有效值有debug5、debug4、debug3、debug2、debug1、info、log、notice、warning、error、fatal、panic。参数的详细信息请参见表1。

默认值:panic

该参数用于在实际业务场景中定位问题。由于频繁打印函数栈会增加系统开销并影响稳定性,建议不要将该参数设置为fatal及panic以外的级别。

表1解释DWS中使用的消息安全级别。当日志输出到syslog或者eventlog时,DWS进行如表中的转换。

表1 信息严重程度分类

信息严重程度类型

详细说明

系统日志

事件日志

debug[1-5]

报告详细调试信息。

DEBUG

INFORMATION

log

报告对数据库管理员有用的信息, 比如检查点操作统计信息。

INFO

INFORMATION

info

报告用户可能需求的信息, 比如在VACUUM VERBOSE过程中的信息。

INFO

INFORMATION

notice

报告可能对用户有帮助的信息, 比如, 长标识符的截断, 作为主键一部分创建的索引等。

NOTICE

INFORMATION

warning

报告警告信息, 比如在事务块范围之外的COMMIT。

NOTICE

WARNING

error

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

WARNING

ERROR

fatal

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

ERR

ERROR

panic

报告导致整个数据库被关闭的原因。

CRIT

ERROR

plog_merge_age

参数说明:该参数用于控制性能日志数据输出的周期。

参数类型:USERSET

取值范围:0~INT_MAX,单位为毫秒(ms)。

  • 0,表示当前会话不再输出性能日志数据。
  • 大于0,表示当前会话按照指定的时间周期进行输出性能日志数据。该参数设置的越小,输出的日志数据越多,对性能的负面影响越大。

默认值:3s

  • 该参数以毫秒为单位,建议在使用过程中设置值为1000的整数倍,即设置值以秒为最小单位。
  • 该参数所控制的性能日志文件以prf为扩展名,文件放置在$GAUSSLOG/gs_profile/<node_name> 目录下面,其中node_name是由postgres.conf文件中的pgxc_node_name的值。
  • 不建议用户使用该参数。

profile_logging_module

参数说明:用于设置记录性能日志的类型,使用该参数时需确保plog_merge_age参数值非0。该参数属于会话级参数,不建议通过gs_guc工具来设置。仅8.1.3及以上集群版本支持。

参数类型:USERSET

取值范围:字符串

默认值: ALL,on(OBS,HADOOP,REMOTE_DATANODE),off(MD)

设置方法:通过SHOW profile_logging_module;查看支持设置的模块。例如,查询输出结果为:

1
2
3
4
SHOW profile_logging_module;
profile_logging_module
--------------------------------------------
ALL,on(OBS,HADOOP,REMOTE_DATANODE),off(MD)(1 row)

打开MD性能日志,并查看设置结果。ALL表示对所有模块的日志输出进行整体开启或关闭。

1
2
3
4
5
6
7
SET profile_logging_module='on(md)';
SET

SHOW profile_logging_module;
profile_logging_module
---------------------------------------------
ALL,on(MD,OBS,HADOOP,REMOTE_DATANODE),off()(1 row)