タイプ: bool
デフォルト: off
コンテキスト: sighup
再起動: false

logging_collectorが有効な場合、このパラメータにより、PostgreSQLは既存の同名のファイルに追加するのではなく、そのファイルを切り詰める(上書きする)ようになります。しかし、切り詰めは時間を基にしたローテーションのために新規にファイルが開かれた時にのみ発生し、サーバ起動時やサイズを基にしたローテーションでは発生しません。偽の場合、全ての場合において既存のファイルは追記されます。例えば、この設定をpostgresql-%H.logのようなlog_filenameと組み合わせて使用すると、24個の時別のログファイルが生成され、それらは周期的に上書きされることになります。このパラメータはpostgresql.confファイル、または、サーバのコマンドラインで設定されます。

例:7日間のログを保存し、毎日のログを server_log.Monserver_log.Tue、等とし、そして自動的に前週のログを今週のログで上書きするには以下のように設定します。log_filenameserver_log.%aとし、log_truncate_on_rotationonにし、そしてlog_rotation_age1440に設定します。

例:24時間のログを保持、1時間おきに1つのログファイルを作成、ただし、ログファイルのサイズが1ギガバイトを超えた場合それより早く切り替えさせるには、log_filenameserver_log.%H%Mにし、log_truncate_on_rotationonにし、log_rotation_age60にし、そしてlog_rotation_size1000000に設定します。log_filename%Mを含めると、サイズを元にしたローテーションが時間毎の始めのファイル名とは異なる名前のファイルを選択するようにできます。

推奨事項 [EN]

Set to “on” for production with a reusable logfile name to limit log accumulation if you don't have a sysadmin script to do so.

On pgsql-hackers

件のコメント