我现在用的是以下配方进行log rotation
:执行日志旋转的厨师食谱的一部分
bash 'adding_logrotate_for_consul' do
code <<-EOH
echo "" >> /etc/logrotate.conf
echo "/tmp/output.log {" >> /etc/logrotate.conf
echo -e "\tsize 20M" >> /etc/logrotate.conf
echo -e "\tcreate 700 root root" >> /etc/logrotate.conf
echo -e "\trotate 3" >> /etc/logrotate.conf
echo "}" >> /etc/logrotate.conf
EOH
end
上面的代码运行完全没问题,并将其添加在/etc/logrotate.conf
/tmp/output.log {
size 20M
create 700 root root
rotate 3
}
以下条目但是,在使用厨师添加上述条目之后,我必须每次在节点上手动运行以下命令:
logrotate -s /var/log/logstatus /etc/logrotate.conf
如何在厨师配方中包含上述命令,以便在文件大小达到20M后使用厨师配方执行日志轮转?
也许值得从'cron' cookbook中添加'cron_d'来建立一个定期运行的logrotate。 – Tensibai
@Tensibai好点!如果轮换每天需要一次以上。 –
@GeneR非常感谢您的回复。我想问一下“logrotate”食谱是否依赖于其他食谱。如果是,那么我应该如何将这些食谱转移到Berksfile中? – meallhour