AWS Opsworks:logrotate会自动运行吗?

时间:2016-02-02 21:55:26

标签: linux amazon-web-services crontab aws-opsworks logrotate

我已经配置了我自己的logrotate(应用程序日志)和编辑(nginx日志),所有这些都是在食谱(厨师)中创建的。我的问题是:logrotate会自动运行吗?

我问,因为我的配置中日志的大小不能超过5MB,并且日志的大小为100MB。

显示root的crontabs:

crontab -l
no crontab for root

/etc/logrotate.conf中

weekly
su root syslog
rotate 4
create
include /etc/logrotate.d
/var/log/wtmp {
    missingok
    monthly
    create 0664 root utmp
    rotate 1
}

/var/log/btmp {
    missingok
    monthly
    create 0660 root utmp
    rotate 1
}

3 个答案:

答案 0 :(得分:1)

通常,logrotate作为每日cron作业运行。您可以将// main.js import name from './cmod.js'; console.log(name); size 5M添加到logrotate配置中,以查找您感兴趣的日志。

在每日logrotate运行之间,日志有可能增长超过5M。这可以通过降低大小值和/或更频繁地运行logrotate来调整。

查看daily了解详情。

答案 1 :(得分:0)

如果要在文件大小达到5Mb时立即轮换文件,只需将文件放在/etc/cron.hourly/文件夹可执行文件中:

#!/bin/sh
test -x /usr/sbin/logrotate || exit 0
/usr/sbin/logrotate /etc/logrotate.d/nginx

如果这还不够,你可以像这样做一个crontab工作:

*/30 * * * * root logrotate /etc/logrotate.d/nginx (每30分钟轮换一次)

答案 2 :(得分:0)

你要在错误的地方搜索第一件事。 Logrotate是cron日常工作的一部分。

cron作业位于以下目录“/ etc / cron.daily / logrotate”

您可以运行以下命令强制运行logrotate

sudo logrotate -v -f /etc/logrotate.conf

如果您希望日志在达到5mb后轮换,则应在脚本中添加size值。

你应该有这样的东西:

/var/log/mylogs {
......
missingok
size=5M
create 0664 root utmp
rotate 3
}

以下是关于如何轻松设置logrotate的link to more details