log_rotation_age 是一个 配置参数,用于确定单个日志文件的最大生命周期。
log_rotation_age 在 PostgreSQL 8.0 中被添加。
默认值
log_rotation_age 的默认值为:1d。
用法
当自上一个日志文件创建以来已过 log_rotation_age 指定的时间量后,将创建一个新的日志文件。
要使 log_rotation_age 生效,必须启用 logging_collector。
请注意,只有当 log_filename 的格式化间隔粒度与指定值相同或更高时,log_rotation_age 才有效。例如,如果 log_filename 是一个固定字符串,日志文件将永远不会被轮换。
值为 0 将禁用 log_rotation_age。
按 PostgreSQL 版本详细信息
log_rotation_age (PostgreSQL 19)
| 设置 |
1440 |
| 单位 |
min |
| 类别 |
报告和日志记录 / 日志记录位置 |
| 简短描述 |
设置在强制日志文件轮换之前等待的时间量。 |
| 扩展描述 |
0 禁用基于时间的日志文件创建。 |
| 上下文 |
sighup |
| 变量类型 |
整数 |
| 来源 |
默认 |
| 最小值 |
0 |
| 最大值 |
35791394 |
| 枚举值 |
|
| 启动值 |
1440 |
| 重置值 |
1440 |
| 源文件 |
|
| 源行 |
|
| 需要重启 |
false |
文档:log_rotation_age
log_rotation_age (PostgreSQL 18)
| 设置 |
1440 |
| 单位 |
min |
| 类别 |
报告和日志记录 / 日志记录位置 |
| 简短描述 |
设置在强制日志文件轮换之前等待的时间量。 |
| 扩展描述 |
0 禁用基于时间的日志文件创建。 |
| 上下文 |
sighup |
| 变量类型 |
整数 |
| 来源 |
默认 |
| 最小值 |
0 |
| 最大值 |
35791394 |
| 枚举值 |
|
| 启动值 |
1440 |
| 重置值 |
1440 |
| 源文件 |
|
| 源行 |
|
| 需要重启 |
false |
文档:log_rotation_age
log_rotation_age (PostgreSQL 17)
| 设置 |
1440 |
| 单位 |
min |
| 类别 |
报告和日志记录 / 日志记录位置 |
| 简短描述 |
设置在强制日志文件轮换之前等待的时间量。 |
| 扩展描述 |
|
| 上下文 |
sighup |
| 变量类型 |
整数 |
| 来源 |
默认 |
| 最小值 |
0 |
| 最大值 |
35791394 |
| 枚举值 |
|
| 启动值 |
1440 |
| 重置值 |
1440 |
| 源文件 |
|
| 源行 |
|
| 需要重启 |
false |
文档:log_rotation_age
log_rotation_age (PostgreSQL 16)
| 设置 |
1440 |
| 单位 |
min |
| 类别 |
报告和日志记录 / 日志记录位置 |
| 简短描述 |
设置在强制日志文件轮换之前等待的时间量。 |
| 扩展描述 |
|
| 上下文 |
sighup |
| 变量类型 |
整数 |
| 来源 |
默认 |
| 最小值 |
0 |
| 最大值 |
35791394 |
| 枚举值 |
|
| 启动值 |
1440 |
| 重置值 |
1440 |
| 源文件 |
|
| 源行 |
|
| 需要重启 |
false |
文档:log_rotation_age
log_rotation_age (PostgreSQL 15)
| 设置 |
1440 |
| 单位 |
min |
| 类别 |
报告和日志记录 / 日志记录位置 |
| 简短描述 |
设置在强制日志文件轮换之前等待的时间量。 |
| 扩展描述 |
|
| 上下文 |
sighup |
| 变量类型 |
整数 |
| 来源 |
默认 |
| 最小值 |
0 |
| 最大值 |
35791394 |
| 枚举值 |
|
| 启动值 |
1440 |
| 重置值 |
1440 |
| 源文件 |
|
| 源行 |
|
| 需要重启 |
false |
文档:log_rotation_age
log_rotation_age (PostgreSQL 14)
| 设置 |
1440 |
| 单位 |
min |
| 类别 |
报告和日志记录 / 日志记录位置 |
| 简短描述 |
自动日志文件轮换将在 N 分钟后发生。 |
| 扩展描述 |
|
| 上下文 |
sighup |
| 变量类型 |
整数 |
| 来源 |
默认 |
| 最小值 |
0 |
| 最大值 |
35791394 |
| 枚举值 |
|
| 启动值 |
1440 |
| 重置值 |
1440 |
| 源文件 |
|
| 源行 |
|
| 需要重启 |
false |
文档:log_rotation_age
log_rotation_age (PostgreSQL 13)
| 设置 |
1440 |
| 单位 |
min |
| 类别 |
报告和日志记录 / 日志记录位置 |
| 简短描述 |
自动日志文件轮换将在 N 分钟后发生。 |
| 扩展描述 |
|
| 上下文 |
sighup |
| 变量类型 |
整数 |
| 来源 |
默认 |
| 最小值 |
0 |
| 最大值 |
35791394 |
| 枚举值 |
|
| 启动值 |
1440 |
| 重置值 |
1440 |
| 源文件 |
|
| 源行 |
|
| 需要重启 |
false |
文档:log_rotation_age
log_rotation_age (PostgreSQL 12)
| 设置 |
1440 |
| 单位 |
min |
| 类别 |
报告和日志记录 / 日志记录位置 |
| 简短描述 |
自动日志文件轮换将在 N 分钟后发生。 |
| 扩展描述 |
|
| 上下文 |
sighup |
| 变量类型 |
整数 |
| 来源 |
默认 |
| 最小值 |
0 |
| 最大值 |
35791394 |
| 枚举值 |
|
| 启动值 |
1440 |
| 重置值 |
1440 |
| 源文件 |
|
| 源行 |
|
| 需要重启 |
false |
文档:log_rotation_age
log_rotation_age (PostgreSQL 11)
| 设置 |
1440 |
| 单位 |
min |
| 类别 |
报告和日志记录 / 日志记录位置 |
| 简短描述 |
自动日志文件轮换将在 N 分钟后发生。 |
| 扩展描述 |
|
| 上下文 |
sighup |
| 变量类型 |
整数 |
| 来源 |
默认 |
| 最小值 |
0 |
| 最大值 |
35791394 |
| 枚举值 |
|
| 启动值 |
1440 |
| 重置值 |
1440 |
| 源文件 |
|
| 源行 |
|
| 需要重启 |
false |
文档:log_rotation_age
log_rotation_age (PostgreSQL 10)
| 设置 |
1440 |
| 单位 |
min |
| 类别 |
报告和日志记录 / 日志记录位置 |
| 简短描述 |
自动日志文件轮换将在 N 分钟后发生。 |
| 扩展描述 |
|
| 上下文 |
sighup |
| 变量类型 |
整数 |
| 来源 |
默认 |
| 最小值 |
0 |
| 最大值 |
35791394 |
| 枚举值 |
|
| 启动值 |
1440 |
| 重置值 |
1440 |
| 源文件 |
|
| 源行 |
|
| 需要重启 |
false |
文档:log_rotation_age
log_rotation_age (PostgreSQL 9.6)
| 设置 |
1440 |
| 单位 |
min |
| 类别 |
报告和日志记录 / 日志记录位置 |
| 简短描述 |
自动日志文件轮换将在 N 分钟后发生。 |
| 扩展描述 |
|
| 上下文 |
sighup |
| 变量类型 |
整数 |
| 来源 |
默认 |
| 最小值 |
0 |
| 最大值 |
35791394 |
| 枚举值 |
|
| 启动值 |
1440 |
| 重置值 |
1440 |
| 源文件 |
|
| 源行 |
|
| 需要重启 |
false |
文档:log_rotation_age
log_rotation_age (PostgreSQL 9.5)
| 设置 |
1440 |
| 单位 |
min |
| 类别 |
报告和日志记录 / 日志记录位置 |
| 简短描述 |
自动日志文件轮换将在 N 分钟后发生。 |
| 扩展描述 |
|
| 上下文 |
sighup |
| 变量类型 |
整数 |
| 来源 |
默认 |
| 最小值 |
0 |
| 最大值 |
35791394 |
| 枚举值 |
|
| 启动值 |
1440 |
| 重置值 |
1440 |
| 源文件 |
|
| 源行 |
|
| 需要重启 |
false |
文档:log_rotation_age
log_rotation_age (PostgreSQL 9.4)
| 设置 |
1440 |
| 单位 |
min |
| 类别 |
报告和日志记录 / 日志记录位置 |
| 简短描述 |
自动日志文件轮换将在 N 分钟后发生。 |
| 扩展描述 |
|
| 上下文 |
sighup |
| 变量类型 |
整数 |
| 来源 |
默认 |
| 最小值 |
0 |
| 最大值 |
35791394 |
| 枚举值 |
|
| 启动值 |
1440 |
| 重置值 |
1440 |
| 源文件 |
|
| 源行 |
|
文档:log_rotation_age
log_rotation_age (PostgreSQL 9.3)
| 设置 |
1440 |
| 单位 |
min |
| 类别 |
报告和日志记录 / 日志记录位置 |
| 简短描述 |
自动日志文件轮换将在 N 分钟后发生。 |
| 扩展描述 |
|
| 上下文 |
sighup |
| 变量类型 |
整数 |
| 来源 |
默认 |
| 最小值 |
0 |
| 最大值 |
35791394 |
| 枚举值 |
|
| 启动值 |
1440 |
| 重置值 |
1440 |
| 源文件 |
|
| 源行 |
|
文档:log_rotation_age
log_rotation_age (PostgreSQL 9.2)
| 设置 |
1440 |
| 单位 |
min |
| 类别 |
报告和日志记录 / 日志记录位置 |
| 简短描述 |
自动日志文件轮换将在 N 分钟后发生。 |
| 扩展描述 |
|
| 上下文 |
sighup |
| 变量类型 |
整数 |
| 来源 |
默认 |
| 最小值 |
0 |
| 最大值 |
35791394 |
| 枚举值 |
|
| 启动值 |
1440 |
| 重置值 |
1440 |
| 源文件 |
|
| 源行 |
|
文档:log_rotation_age
log_rotation_age (PostgreSQL 9.1)
| 设置 |
1440 |
| 单位 |
min |
| 类别 |
报告和日志记录 / 日志记录位置 |
| 简短描述 |
自动日志文件轮换将在 N 分钟后发生。 |
| 扩展描述 |
|
| 上下文 |
sighup |
| 变量类型 |
整数 |
| 来源 |
默认 |
| 最小值 |
0 |
| 最大值 |
35791394 |
| 枚举值 |
|
| 启动值 |
1440 |
| 重置值 |
1440 |
| 源文件 |
|
| 源行 |
|
文档:log_rotation_age
log_rotation_age (PostgreSQL 9.0)
| 设置 |
1440 |
| 单位 |
min |
| 类别 |
报告和日志记录 / 日志记录位置 |
| 简短描述 |
自动日志文件轮换将在 N 分钟后发生。 |
| 扩展描述 |
|
| 上下文 |
sighup |
| 变量类型 |
整数 |
| 来源 |
默认 |
| 最小值 |
0 |
| 最大值 |
35791394 |
| 枚举值 |
|
| 启动值 |
1440 |
| 重置值 |
1440 |
| 源文件 |
|
| 源行 |
|
文档:log_rotation_age
log_rotation_age (PostgreSQL 8.4)
| 设置 |
1440 |
| 单位 |
min |
| 类别 |
报告和日志记录 / 日志记录位置 |
| 简短描述 |
自动日志文件轮换将在 N 分钟后发生。 |
| 扩展描述 |
|
| 上下文 |
sighup |
| 变量类型 |
整数 |
| 来源 |
默认 |
| 最小值 |
0 |
| 最大值 |
35791394 |
| 枚举值 |
|
| 启动值 |
1440 |
| 重置值 |
1440 |
| 源文件 |
|
| 源行 |
|
文档:log_rotation_age
log_rotation_age (PostgreSQL 8.3)
| 设置 |
|
| 单位 |
min |
| 类别 |
报告和日志记录 / 日志记录位置 |
| 简短描述 |
自动日志文件轮换将在 N 分钟后发生。 |
| 扩展描述 |
|
| 上下文 |
sighup |
| 变量类型 |
整数 |
| 来源 |
默认 |
| 最小值 |
0 |
| 最大值 |
35791394 |
文档:log_rotation_age
log_rotation_age (PostgreSQL 8.2)
| 设置 |
|
| 单位 |
min |
| 类别 |
报告和日志记录 / 日志记录位置 |
| 简短描述 |
自动日志文件轮换将在 N 分钟后发生 |
| 扩展描述 |
|
| 上下文 |
sighup |
| 变量类型 |
整数 |
| 来源 |
默认 |
| 最小值 |
0 |
| 最大值 |
35791394 |
文档:log_rotation_age
变更历史
示例
使用 log_rotation_age 设置为 1min 的用法示例
postgres=# SHOW log_filename;
log_filename
--------------------------------
postgresql-%Y-%m-%d_%H%M%S.log
(1 row)
postgres=# SELECT pg_current_logfile();
pg_current_logfile
---------------------------------------
/tmp/postgresql-2022-07-29_040400.log
(1 row)
postgres=# SELECT pg_sleep(60);
pg_sleep
----------
(1 row)
postgres=# SELECT pg_current_logfile();
pg_current_logfile
---------------------------------------
/tmp/postgresql-2022-07-29_040500.log
(1 row)