【PostgreSQL-9.6.3】log参数的设置

编辑数据目录中的postgresql.conf参数文件,我的数据目录是/usr/local/pgsql/data

vi postgresql.conf

找到如下内容:

...

#------------------------------------------------------------------------------
# ERROR REPORTING AND LOGGING
#------------------------------------------------------------------------------

# - Where to Log -

#log_destination = 'stderr'             # Valid values are combinations of
                                        # stderr, csvlog, syslog, and eventlog,
                                        # depending on platform.  csvlog
                                        # requires logging_collector to be on.

# This is used when logging to stderr:
#logging_collector = off                # Enable capturing of stderr and csvlog
                                        # into log files. Required to be on for
                                        # csvlogs.
                                        # (change requires restart)

# These are only used if logging_collector is on:
#log_directory = 'pg_log'               # directory where log files are written,
                                        # can be absolute or relative to PGDATA
#log_filename = 'postgresql-%Y-%m-%d_%H%M%S.log'        # log file name pattern,
                                        # can include strftime() escapes
#log_file_mode = 0600                   # creation mode for log files,
                                        # begin with 0 to use octal notation
#log_truncate_on_rotation = off         # If on, an existing log file with the

#log_rotation_age = 1d                  # Automatic rotation of logfiles will
                                        # happen after that time.  0 disables.
#log_rotation_size = 10MB               # Automatic rotation of logfiles will

...

日志收集功能在大部分情况下是需要打开的,所以设置为:

logging_collector = on

日志目录可以使用默认目录,也可以自行修改,一般选择默认目录就可以了:

log_directory = 'pg_log'

日志文件模式,一般选择默认就可以:

log_file_mode = 0600

日志保存周期及切换方式可以采用如下几种方案:

(1)每天生成新的日志文件

log_filename = 'postgresql-%Y-%m-%d_%H%M%S.log'

log_truncate_on_rotation = off

log_rotation_age = 1d

log_rotation_size = 0

(2)每当日志文件满10M时,进行切换

log_filename = 'postgresql-%Y-%m-%d_%H%M%S.log'

log_truncate_on_rotation = off

log_rotation_age = 0

log_rotation_size = 10M

(3)日志保存周期为7天,循环覆盖

log_filename = 'postgresql-%Y-%m-%d_%H%M%S.log'

log_truncate_on_rotation = on

log_rotation_age = 1d

log_rotation_size = 0

 

原文地址:https://www.cnblogs.com/NextAction/p/7366608.html