我可以訪問S3存儲桶。我不擁有這個桶。我需要檢查是否有新文件添加到存儲桶中,以便對其進行監視。如何使用boto使用python監控AWS S3存儲桶?
我看到桶可以觸發事件,並且可以利用Amazon的Lambda來監視和響應這些事件。但是,我無法修改存儲桶的設置以允許此設置。
我的第一個想法是篩選所有文件並獲得最新的文件。但是,該存儲桶中有很多文件,這種方法證明效率很低。
具體問題:
- 有沒有一種方法能夠有效地獲得在桶中最新的文件?
- 有沒有一種方法可以監視使用boto上傳到存儲桶?
以下具體問題:
- 你會如何解決這個問題?假設你必須把最新的文件放在一個桶裏並打印出它的名字,你會怎麼做?
謝謝!
你好。感謝你的回答!我做了類似於你的建議/我最初的想法。在while循環中,我得到項目列表,按日期排序並提取第一個項目。我也保留最後一個新文件。如果當前最新的文件與最新的最新文件不同,這是一個新文件,所以我會做這件事。儘管如此,我認爲這種方法根本不算優雅,但需要近半分鐘的時間才能訂購桶中的所有物品。迭代一次找到最新的也沒有太大的改進。 – RandomGuyqwert
是的,有更好的方法(Lambda,SQS,SNS,或者甚至將信息存儲在DynamoDB表中),但它們都需要對存儲桶本身進行權限。只有讀權限,只有有限的選項。 –