【发布时间】:2020-08-06 00:07:41
【问题描述】:
我正在尝试使用 postrotate 命令轮换一堆日志文件并将它们上传到 S3。
但是,postrotate 脚本似乎没有扩展 * glob 通配符:
我的 logrotate 配置:
/var/log/application/*.log {
missingok
dateext
size 500M
notifempty
copytruncate
compress
rotate 1512
postrotate
/usr/bin/aws s3 mv /var/log/application/*.gz s3://mygreatbucket/
endscript
}
我在使用该配置运行 logrotate 时看到的错误:
The user-provided path /var/log/application/*.gz does not exist.
这是来自 aws cli s3 命令的消息。如果我手动运行我的命令,我可以复制它:
/usr/bin/aws s3 mv '/var/log/application/*.gz' s3://mygreatbucket
(注意单引号)。
如何才能在 postrotate 步骤中扩展 glob 通配符?
【问题讨论】:
标签: amazon-web-services amazon-s3 sh logrotate