elB*_*rde 6 postgresql logging
我有一个非常简单的要求 - PostgreSQL 日志目录应该有固定的最大大小,例如所有 PostgreSQL 日志的最大大小为 10 GB。
它可以通过创建固定大小的日志并使用日志轮换(例如轮换10个日志文件,每个日志文件1 GB)来实现。
我尝试使用 PostgreSQL 日志记录配置进行设置,但没有成功。问题是“log_truncate_on_rotation”不适用于基于大小的旋转,仅适用于基于时间的旋转。
所以,我的问题是 - 可以仅使用 PostgreSQL 配置来实现还是我必须使用其他东西?如果没有,为什么 PostgreSQL 没有这个功能?
我有几个选择:
是的 - 你是对的,没有这样的功能 - 你需要一个 cron
https://www.postgresql.org/docs/current/static/runtime-config-logging.html
log_truncate_on_rotation(布尔值)
当启用logging_collector时,此参数将导致PostgreSQL截断(覆盖)而不是附加到任何现有的同名日志文件。但是,仅当由于基于时间的轮换而打开新文件时才会发生截断,而不是在服务器启动或基于大小的轮换期间发生。
您甚至可以设置每分钟的作业来检查日志数量:
* * * * * rm $(ls -t /PGDATA/pg_log/* | tail -n 1)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9101 次 |
| 最近记录: |