Re: FW: Serverlog 100GB - Mailing list pgsql-general

From Randy How
Subject Re: FW: Serverlog 100GB
Date
Msg-id 068801c6c86c$c3b7e5b0$0e28c80a@i3.local
Whole thread Raw
In response to FW: Serverlog 100GB  ("Randy How" <rhow@i3.com>)
Responses Re: FW: Serverlog 100GB  (Adrian Klaver <aklaver@comcast.net>)
List pgsql-general
Steve,

Our confusion about this is how the "serverlog" is getting populated in the
first place.  Where does this filename get set?  How can it be changed?
Looking through postgresql.conf, there is no mention of "serverlog."  The
logging section seems to have everything set to defaults, including
verbosity.  The #redirect_stderr variable is set to "off", which, according
to my understanding, means that there is supposed to be no logging in the
first place.  What are we missing here?  Here is a copy of the log section
of postgresql.conf:

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

# - Where to Log -

#log_destination = 'stderr'             # Valid values are combinations of
                                        # stderr, syslog and eventlog,
                                        # depending on platform.

# This is used when logging to stderr:
#redirect_stderr = off                  # Enable capturing of stderr into
log
                                        # files

# These are only used if redirect_stderr 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_truncate_on_rotation = off # If on, any existing log file of the same
                                        # name as the new log file will be
                                        # truncated rather than appended to.
But
                                        # such truncation only occurs on
                                        # time-driven rotation, not on
restarts
                                        # or size-driven rotation. Default
is
                                        # off, meaning append to existing
files
                                        # in all cases.
#log_rotation_age = 1440                # Automatic rotation of logfiles
will
                                        # happen after so many minutes.  0
to
                                        # disable.
#log_rotation_size = 10240              # Automatic rotation of logfiles
will
                                        # happen after so many kilobytes of
log
                                        # output.  0 to disable.

# These are relevant when logging to syslog:
#syslog_facility = 'LOCAL0'
#syslog_ident = 'postgres'


# - When to Log -

#client_min_messages = notice           # Values, in order of decreasing
detail:
                                        #   debug5
                                        #   debug4
                                        #   debug3
                                        #   debug2
                                        #   debug1
                                        #   log
                                        #   notice
                                        #   warning
                                        #   error

#log_min_messages = notice              # Values, in order of decreasing
detail:
                                        #   debug5
                                        #   debug4
                                        #   debug3
                                        #   debug2
                                        #   debug1
                                        #   info
                                        #   notice
                                        #   warning
                                        #   error
                                        #   log
                                        #   fatal
                                        #   panic

#log_error_verbosity = default          # terse, default, or verbose
messages

#log_min_error_statement = panic        # Values in order of increasing
severity
:
                                        #   debug5
                                        #   debug4
                                        #   debug3
                                        #   debug2
                                        #   debug1
                                        #   info
                                        #   notice
                                        #   warning
                                        #   error
                                        #   panic(off)

#log_min_duration_statement = -1        # -1 is disabled, 0 logs all
statements
                                        # and their durations, in
milliseconds.

#silent_mode = off                      # DO NOT USE without syslog or
                                        # redirect_stderr

# - What to Log -

#debug_print_parse = off
#debug_print_rewritten = off
#debug_print_plan = off
#debug_pretty_print = off
#log_connections = off
#log_disconnections = off
#log_duration = off
#log_line_prefix = ''                   # Special values:
                                        #   %u = user name
                                        #   %d = database name
                                        #   %r = remote host and port
                                        #   %h = remote host
                                        #   %p = PID
                                        #   %t = timestamp (no milliseconds)
                                        #   %m = timestamp with milliseconds
                                        #   %i = command tag
                                        #   %c = session id
                                        #   %l = session line number
                                        #   %s = session start timestamp
                                        #   %x = transaction id
                                        #   %q = stop here in non-session
                                        #        processes
                                        #   %% = '%'
                                        # e.g. '<%u%%%d> '
#log_statement = 'none'                 # none, mod, ddl, all
#log_hostname = off


-----Original Message-----
From: Randy How [mailto:rhow@i3.com]
Sent: Friday, August 25, 2006 8:52 AM
To: 'Tom Lane'
Cc: 'pgsql-general@postgresql.org'
Subject: RE: [GENERAL] FW: Serverlog 100GB

Thanks Tom,

http://www.postgresql.org/docs/8.1/interactive/logfile-maintenance.html

I'll go over this documentation.

Thanks again
Randy


-----Original Message-----
From: pgsql-general-owner@postgresql.org
[mailto:pgsql-general-owner@postgresql.org] On Behalf Of Tom Lane
Sent: Thursday, August 24, 2006 10:37 PM
To: Randy How
Cc: pgsql-general@postgresql.org
Subject: Re: [GENERAL] FW: Serverlog 100GB

"Randy How" <rhow@i3.com> writes:
> We're running PostGres on linux, version 8.1.x. on a new server for a
> few weeks.  And the serverlog just consumed the rest of the disk space
> - 100GB log file.  Wow, that's a personal record.

Perhaps choose less verbose logging settings?  But really the correct answer
to this is to set up a logfile rotation schedule, which you can easily do
with either syslog or redirect_stderr log methods.  I'd lean to the latter
myself.

            regards, tom lane

---------------------------(end of broadcast)---------------------------
TIP 5: don't forget to increase your free space map settings



pgsql-general by date:

Previous
From: Jeff Davis
Date:
Subject: Re: Saving a jpg into Postgresql table
Next
From: Adrian Klaver
Date:
Subject: Re: FW: Serverlog 100GB