这甚至可以在 rsyslog 中做到吗?
http://www.rsyslog.com/doc/rsyslog_conf_output.html
此语法不起作用:
mail.* -/var/log/mail.log:300M
Run Code Online (Sandbox Code Playgroud)
我需要在 rsyslog 而不是 logrotate 中设置这个限制,因为日志可以快速填满分区,以防出现某些错误(甚至在第二天进入 logrotate 之前)高流量邮件系统。
小智 6
首先,根据您链接的文档,您的语法是错误的,因为 $outchannel 的参数应以逗号分隔,因此类似于
$outchannel mail,/var/log/mail.log, 300000000,/path/to/rotate/script
Run Code Online (Sandbox Code Playgroud)
会更正确。
其次,外信道在达到最大尺寸时触发一些脚本。它不仅会停止写入,还会运行脚本并再次检查。因此,您仍然需要一个脚本来在触发后减小日志文件的大小。
我认为您误解了 outchannel 命令本身,并且您没有正确阅读链接到的文档,因为它明确指出:
max-size 必须始终以字节为单位指定 - 在开发阶段没有特殊符号(如 1k、1m...)。
| 归档时间: |
|
| 查看次数: |
3945 次 |
| 最近记录: |