タイプ: string
デフォルト: postgresql-%Y-%m-%d_%H%M%S.log
コンテキスト: sighup
再起動: false

logging_collectorが有効な場合、このパラメータは作成されたログファイルのファイル名を設定します。値はstrftimeパターンとして扱われるため、%エスケープを使用して、時刻によって変動するファイル名を指定することができます。(時間帯に依存した%エスケープが存在する場合、で指定された時間帯で計算が行われます。)サポートされている%-エスケープは strftime

仕様によく似ています。システムのstrftimeは直接使用されないので、プラットフォーム固有の(非標準)の拡張は動作しません。デフォルトはpostgresql-%Y-%m-%d_%H%M%S.logです。

エスケープすることなくファイル名を指定する場合、ディスク全体を使い切ってしまうことを防止するためにログローテーションを行うユーティリティを使用することを計画しなければなりません。 8.4より前のリリースのPostgreSQLでは、%エスケープがなければ、新しいログファイルの生成時のエポック時刻を付与しますが、これはもはや当てはまりません。

CSV書式の出力がlog_destinationで有効な場合、タイムスタンプ付きのログファイル名に.csvを付与し、最終的なCSV書式出力用のファイル名が作成されます。(log_filenameが.logで終わる場合は後置詞が置き換えられます。)

このパラメータはpostgresql.confファイルか、サーバコマンドラインのみ設定可能です。

推奨事項 [EN]

If you want your logs to rotate automatically without needing a cron job to delete old logs, try naming them after the days of the week or the month so they overwrite automatically (i.e. 'postgresql-%a' or 'postgresql-%d'). This also helps with log analysis.

件のコメント