diff options
Diffstat (limited to 'doc/src/sgml/config.sgml')
| -rw-r--r-- | doc/src/sgml/config.sgml | 33 |
1 files changed, 24 insertions, 9 deletions
diff --git a/doc/src/sgml/config.sgml b/doc/src/sgml/config.sgml index 6e1378a9d6..3e178759a2 100644 --- a/doc/src/sgml/config.sgml +++ b/doc/src/sgml/config.sgml @@ -3123,7 +3123,7 @@ SELECT * FROM parent WHERE key = 2400; value</> (<acronym>CSV</>) format, which is convenient for loading logs into programs. See <xref linkend="runtime-config-logging-csvlog"> for details. - <varname>logging_collector</varname> must be enabled to generate + <xref linkend="guc-logging-collector"> must be enabled to generate CSV-format log output. </para> @@ -3163,24 +3163,39 @@ local0.* /var/log/postgresql </indexterm> <listitem> <para> - This parameter captures plain and CSV-format log messages - sent to <application>stderr</> and redirects them into log files. + This parameter enables the <firstterm>logging collector</>, which + is a background process that captures log messages + sent to <systemitem>stderr</> and redirects them into log files. This approach is often more useful than logging to <application>syslog</>, since some types of messages - might not appear in <application>syslog</> output (a common example - is dynamic-linker failure messages). + might not appear in <application>syslog</> output. (One common + example is dynamic-linker failure messages; another is error messages + produced by scripts such as <varname>archive_command</>.) This parameter can only be set at server start. </para> <note> <para> + It is possible to log to <systemitem>stderr</> without using the + logging collector; the log messages will just go to wherever the + server's <systemitem>stderr</> is directed. However, that method is + only suitable for low log volumes, since it provides no convenient + way to rotate log files. Also, on some platforms not using the + logging collector can result in lost or garbled log output, because + multiple processes writing concurrently to the same log file can + overwrite each other's output. + </para> + </note> + + <note> + <para> The logging collector is designed to never lose messages. This means that in case of extremely high load, server processes could be - blocked due to trying to send additional log messages when the + blocked while trying to send additional log messages when the collector has fallen behind. In contrast, <application>syslog</> - prefers to drop messages if it cannot write them, which means it's - less reliable in those cases but it will not block the rest of the - system. + prefers to drop messages if it cannot write them, which means it + may fail to log some messages in such cases but it will not block + the rest of the system. </para> </note> |
