Logrotate脚本没有上传到S3

我正在尝试使用logrotate从我的rails和nginx命令每天上传一次日志文件。 当我手动运行logrotate命令时,文件成功上传,但是从来不会自行完成。 我曾尝试使用lastaction,也postrotate,但实际上没有上传到S3。 我错过了一些微不足道的东西吗?

/home/deploy/www/mysite.com/log/*log { su daily dateext dateformat _%Y_%m_%d rotate 3 missingok dateext compress delaycompress notifempty copytruncate sharedscripts lastaction rvmsudo passenger-config reopen-logs; /usr/bin/s3cmd sync /home/deploy/www/mysite.com/log/*.gz s3://mysite_com/logs/rails/ endscript } 

编辑:下面是这样做的更正方式。 因此,不要使用lastaction脚本,而是调用一个shell脚本。

 lastaction ./rails_reload_and_upload.sh endscript 

其中包含

 #/bin/bash ./reload_rails_logs.sh /usr/bin/s3cmd --config /home/username/.s3cfg sync /home/deploy/www/mysite.com/log/*.gz s3://mysite_com/logs/rails/ 

我想说, rvmsudorvmsudo最有可能需要额外的环境variables才能成功运行,这些variables不是在logrotate的上下文中设置的,而是在交互式shell会话中设置的。 如果rvmsudo在cron设置的限制性PATH不可用,我不会感到惊讶。