2017-07-18 82 views
0

目前,我有Bash命令将输出重定向到日志文件,然后单独调用CLI将日志文件复制到S3。有没有办法将Bash命令直接重定向到S3文件对象?

我想知道是否有一种方法可以直接将输出重定向到S3,而无需额外的命令/步骤。我尝试将aws s3 cp设为https网址,但由于网址是针对S3上的当前现有文件/对象,因此这似乎不起作用。

+0

我相信它应该是可能的,因为kinesis正在流向s3,因此您应该能够在s3创建时将日志文件写入s3。我不确定CLI是否有这个选项,但是使用boto或nodeJS/npm可能会有更多的可能性 - 还要记住每个PUT请求s3收费,每个1k请求花费0.005美元。当你运行'aws s3 cp ....'它的1个请求,但是如果你流了,你会有很多请求 –

回答

0

我从来没有测试,但再检查一下,如果它是合理的:

aws s3 cp <(/path/command arg1 arg2) s3://mybucket/mykey

这里/path/command arg1 arg2是你的“猛砸命令输出重定向到一个日志文件”,但你不能重定向输出,因此你需要把它留在stdout

0

根据场景的严重性不确定是否过度使用,但使用AWS File Gateway,您可以将这些文件放到装入的磁盘上,并且它会自动同步到S3。

相关问题