
# 记录日志的内容
#### debug_pretty_print
**参数说明：**设置此选项对debug_print_parse、debug_print_rewritten和debug_print_plan产生的日志进行缩进，会生成易读但比设置为off时更长的输出格式。
**参数类型**：USERSET
**取值范围：**布尔型
- on表示进行缩进。
- off表示不进行缩进。
**默认值：**on
#### log_duration
**参数说明：**控制记录每个已完成SQL语句的执行时间。对使用扩展查询协议的客户端、会记录语法分析、绑定和执行每一步所花费的时间。
**参数类型**：SUSET
**取值范围：**布尔型
- 设置为off ，该选项与[log_min_duration_statement](https://support.huaweicloud.com/devg-dws/dws_04_0915.html#ZH-CN_TOPIC_0000001811490985__s670cade0b3b84413bd2256e1fe1c8cdb)的不同之处在于log_min_duration_statement强制记录查询文本。
- 设置为on并且log_min_duration_statement大于零，记录所有持续时间，但是仅记录超过阈值的语句。这可用于在高负载情况下搜集统计信息。
**默认值：**on
#### log_error_verbosity
**参数说明：**控制服务器日志中每条记录的消息写入的详细度。
**参数类型**：SUSET
**取值范围：**枚举类型
- terse输出不包括DETAIL、HINT、QUERY及CONTEXT错误信息的记录。
- verbose输出包括SQLSTATE错误代码 、源代码文件名、函数名及产生错误所在的行号。
- default输出包括DETAIL、HINT、QUERY及CONTEXT错误信息的记录，不包括SQLSTATE错误代码 、源代码文件名、函数名及产生错误所在的行号。
**默认值：**default
 #### log_lock_waits
**参数说明：** 当一个会话的等待获得一个锁的时间超过[deadlock_timeout](https://support.huaweicloud.com/devg-dws/dws_04_0928.html#ZH-CN_TOPIC_0000001811490993__s34083b462e2947b5a232d8b3a1465d3b)的值时，此选项控制在数据库日志中记录此消息。这对于决定锁等待是否会产生一个坏的行为是非常有用的。
**参数类型**：SUSET
**取值范围：**布尔型
- on表示记录此信息。
- off表示不记录此信息。
**默认值：**off
 #### log_statement
**参数说明** **：**控制记录SQL语句。对于使用扩展查询协议的客户端，记录接收到执行消息的事件和绑定参数的值（内置单引号要双写）。
**参数类型**：SUSET
![](https://support.huaweicloud.com/devg-dws/public_sys-resources/notice_3.0-zh-cn.png)
即使log_statement设置为all，包含简单语法错误的语句也不会被记录，因为仅在完成基本的语法分析并确定了语句类型之后才记录日志。在使用扩展查询协议的情况下，在执行阶段之前（语法分析或规划阶段）同样不会记录。将log_min_error_statement设为ERROR或更低才能记录这些语句。
**取值范围：**枚举类型
- none表示不记录语句。
- ddl表示记录所有的数据定义语句，比如CREATE、ALTER和DROP语句。
- mod表示记录所有DDL语句，还包括数据修改语句INSERT、UPDATE、DELETE、TRUNCATE和COPY FROM 。
- all表示记录所有语句，PREPARE、EXECUTE和EXPLAIN ANALYZE语句也同样被记录。
**默认值：**none
#### log_temp_files
**参数说明：**控制记录临时文件的删除信息。临时文件可以用来排序、哈希及临时查询结果。当一个临时文件被删除时，将会产生一条日志消息。
**参数类型**：SUSET
**取值范围：**整型，-1\~INT_MAX，单位为KB
- 正整数表示只记录比log_temp_files设定值大的临时文件的删除信息。
- 0表示记录所有的临时文件的删除信息。
- -1表示不记录任何临时文件的删除信息。
**默认值：**-1
#### logging_module
**参数说明：**用于设置或者显示模块日志在服务端的可输出性。该参数属于会话级参数，不建议通过gs_guc工具来设置。
![](https://support.huaweicloud.com/devg-dws/public_sys-resources/caution_3.0-zh-cn.png)
**此参数主要用于日志定位，非必要不建议用户配置，否则会导致集群不可预知异常，需要配置此参数，请联系技术人员确认。**
**参数类型**：USERSET
**取值范围：**字符串
**默认值：**所有模块日志在服务端是不输出的，可由SHOW logging_module查看。
**设置方法**：首先，可以通过SHOW logging_module来查看哪些模块是支持可控制的。例如，查询输出结果为：
```
show logging_module;
logging_module
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
ALL,on(),off(DFS,GUC,HDFS,ORC,SLRU,MEM_CTL,AUTOVAC,ANALYZE,CACHE,ADIO,SSL,GDS,TBLSPC,WLM,SPACE,OBS,EXECUTOR,VEC_EXECUTOR,STREAM,LLVM,OPT,OPT_REWRITE,OPT_JOIN,OPT_AGG,OPT_SUBPLAN,OPT_SETOP,OPT_CARD,OPT_SKEW,SMP,UDF,COOP_ANALYZE,WLMCP,ACCELERATE,PLANHINT,PARQUET,CARBONDATA,SNAPSHOT,XACT,HANDLE,CLOG,TQUAL,EC,REMOTE,CN_RETRY,PLSQL,TEXTSEARCH,SEQ,INSTR,COMM_IPC,COMM_PARAM,CSTORE,JOB,STREAMPOOL,STREAM_CTESCAN)
(1 row)
```
支持可控制的模块使用大写来标识，特殊标识ALL用于对所有模块日志进行设置。可以使用on/off来控制模块日志的输出。设置SSL模块日志为可输出，使用如下命令：
```
set logging_module='on(SSL)';
SET
show logging_module;                                                                                                                                                                                                                                                                                                                                                                                              logging_module                       
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 ALL,on(SSL),off(DFS,GUC,HDFS,ORC,SLRU,MEM_CTL,AUTOVAC,ANALYZE,CACHE,ADIO,GDS,TBLSPC,WLM,SPACE,OBS,EXECUTOR,VEC_EXECUTOR,STREAM,LLVM,OPT,OPT_REWRITE,OPT_JOIN,OPT_AGG,OPT_SUBPLAN,OPT_SETOP,OPT_CARD,OPT_SKEW,SMP,UDF,COOP_ANALYZE,WLMCP,A
CCELERATE,PLANHINT,PARQUET,CARBONDATA,SNAPSHOT,XACT,HANDLE,CLOG,TQUAL,EC,REMOTE,CN_RETRY,PLSQL,TEXTSEARCH,SEQ,INSTR,COMM_IPC,COMM_PARAM,CSTORE,JOB,STREAMPOOL,STREAM_CTESCAN)
(1 row)
```
可以看到模块SSL的日志输出被打开。
ALL标识是相当于一个快捷操作，即对所有模块的日志可输出进行开启或关闭。
```
set logging_module='off(ALL)';
SET
show logging_module;                                                                                                                                                                                                                                                                                                                                                     logging_module                       
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 ALL,on(),off(DFS,GUC,HDFS,ORC,SLRU,MEM_CTL,AUTOVAC,ANALYZE,CACHE,ADIO,SSL,GDS,TBLSPC,WLM,SPACE,OBS,EXECUTOR,VEC_EXECUTOR,STREAM,LLVM,OPT,OPT_REWRITE,OPT_JOIN,OPT_AGG,OPT_SUBPLAN,OPT_SETOP,OPT_CARD,OPT_SKEW,SMP,UDF,COOP_ANALYZE,WLMCP,
ACCELERATE,PLANHINT,PARQUET,CARBONDATA,SNAPSHOT,XACT,HANDLE,CLOG,TQUAL,EC,REMOTE,CN_RETRY,PLSQL,TEXTSEARCH,SEQ,INSTR,COMM_IPC,COMM_PARAM,CSTORE,JOB,STREAMPOOL,STREAM_CTESCAN)
(1 row)
set logging_module='on(ALL)';
SET
show logging_module;                                                                                                                                                                                                                                                                                                                                  logging_module                       
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
 ALL,on(DFS,GUC,HDFS,ORC,SLRU,MEM_CTL,AUTOVAC,ANALYZE,CACHE,ADIO,SSL,GDS,TBLSPC,WLM,SPACE,OBS,EXECUTOR,VEC_EXECUTOR,STREAM,LLVM,OPT,OPT_REWRITE,OPT_JOIN,OPT_AGG,OPT_SUBPLAN,OPT_SETOP,OPT_CARD,OPT_SKEW,SMP,UDF,COOP_ANALYZE,WLMCP,ACCELE
RATE,PLANHINT,PARQUET,CARBONDATA,SNAPSHOT,XACT,HANDLE,CLOG,TQUAL,EC,REMOTE,CN_RETRY,PLSQL,TEXTSEARCH,SEQ,INSTR,COMM_IPC,COMM_PARAM,CSTORE,JOB,STREAMPOOL,STREAM_CTESCAN),off()
(1 row)
```
所有模块中，COMM_IPC必须显式的打开/开闭，执行以下命令都可以将该模块的日志打开：
```
set logging_module='on(ALL)';
SET
set logging_module='on(COMM_IPC)';
SET
```
设置成功后，COMM_IPC模块日志不会自动关闭，关闭COMM_IPC模块的日志，必须手动执行关闭命令，以下两条命令都可以将该模块日志关闭：
```
set logging_module='off(ALL)';
SET
set logging_module='off(COMM_IPC)';
SET
```
**依赖关系** ：该参数依赖于[log_min_messages](https://support.huaweicloud.com/devg-dws/dws_04_0915.html#ZH-CN_TOPIC_0000001811490985__s1ffb0797361d413d875381200fed970b)参数的设置。
#### enable_unshipping_log
**参数说明：**用于控制是否打印语句不下推的日志，主要用于定位不下推语句可能导致的性能问题。
**参数类型**：USERSET
**取值范围：**布尔型
- on表示打印日志。
- off表示不打印日志。
**默认值：**on
#### log_statement_filter_list
**参数说明：**控制记录SQL语句。设置错误码的集合，多个错误码通过"，"分隔，例如：GS_001,GS_002。该错误码日志中不打印SQL语句。该参数仅9.1.0.200及以上版本支持。
**参数类型**：SUSET
**取值范围：**字符串
**默认值：**空字符串
