2016-08-15 4 views
1

Сегодня я столкнулся с проблемой, и нет, если есть решение или это ошибка.Отсутствие события SQS, опубликованного при загрузке нового файла в ведро S3

В нашем проекте мы используем S3 и SQS и API Gateway в качестве интерфейса для S3. Всякий раз, когда новый файл загружается через шлюз, новое событие публикуется до SQS, и проблем нет.

Ранее сегодня я развернул новую версию нашего сервиса и потребляет SQS сообщений. Чтобы проверить, что все работает должным образом, я создал новый контейнер S3 и соответствующую очередь SQS. Затем я начал копировать объекты из производственного ковша во вновь созданный, используя библиотеку Python boto3.

Через некоторое время я заметил, что для некоторых файлов не было опубликовано событие SQS. И после исследования выяснилось, что все такие файлы больше 8Mb.

Я также попытался загрузить файл с помощью AWS CLI на всякий случай, но результат был тот же.

Однако, когда я загружаю файл с веб-консоли AWS, я могу увидеть SQS опубликованное мероприятие.

Так что все работает при загрузке в S3 через API Gateway или AWS Web Console, но не AWS CLI или boto3 и предположительно других библиотек. Похоже на ошибку или какое-то ограничение, но я не мог найти на ней никакой документации.

Испытывал ли кто-либо подобное поведение?

Заранее благодарим за любые советы.

ответ

1

Я считаю, что 8 МБ - это размер, с которого CLI (и SDK) начнет выполнять операции загрузки нескольких частей. Вероятно, вам нужно включить уведомления для события s3:ObjectCreated:CompleteMultipartUpload на вашем ведре S3.

+0

Попробуем, спасибо –

+0

Да, это помогло! Еще раз спасибо! –

 Смежные вопросы

  • Нет связанных вопросов^_^