タイプ: | string |
デフォルト: | stderr |
コンテキスト: | sighup |
再起動: | false |
PostgreSQLは、stderr、csvlogおよびsyslogを含めて、サーバメッセージのログ取得に対し数種類の方法を提供します。Windowsでは、eventlogも同時に提供します。このパラメータを設定するには、コンマ区切りでお好みのログ出力先を記載します。デフォルトでは、ログはstderrのみに出力されます。このパラメータはpostgresql.confファイル、または、サーバのコマンドラインでのみ設定されます。
csvlogがlog_destination
に含まれる場合、ログ項目はプログラムへの読み込みが簡便なカンマ区切り値書式(CSV)で出力されます。詳細はruntime-config-logging-csvlogを参照してください。CSV書式のログ出力を生成するためにはlogging_collectorを有効にする必要があります。
stderrあるいはcsvlogが含まれる場合、ログ収集機構が使用しているログファイルの場所と、その出力先を記録するcurrent_logfilesが作られます。これにより、現在のインスタンスが使っているログを簡単に見つけることができます。このファイルの内容の例を示します。stderr log/postgresql.logcsvlog log/postgresql.csvログローテーションの効果で新しいログファイルが作られると、current_logfilesは再作成され、log_destination
は再ロードされます。このファイルは、stderrもcsvlogもlog_destination
に含まれなくなり、かつログ収集機構が無効になったときに削除されます。
log_destination
でsyslogオプションを使用できるようにするために、ほとんどのUnixシステムではシステムのsyslogデーモンの設定を変更しなければならないでしょう。PostgreSQLではログをLOCAL0
からLOCAL7
までのsyslogファシリティで記録することができます(syslog_facilityを参照してください)。しかし、ほとんどのプラットフォームのデフォルトのsyslog設定ではこれらのメッセージはすべて破棄されます。うまく動作させるためにsyslogデーモンの設定に以下のようなものを追加しなければならないでしょう。local0.* /var/log/postgresql
Windowsでlog_destination
に対しeventlog
オプションを使用する場合、Windows Event Viewer がイベントログメッセージを手際良く表示できるよう、オペレーティングシステムでイベントソースとそのライブラリを登録しなければなりません。 詳細はevent-log-registrationを参照ください。