Данные Amazon SES через AWS S3: есть ли простой способ составить список и загрузить папку и получить количество строк?

Я настроил Amazon SES, чтобы рассылать объявления компании списку из примерно 1000 контактов. Я настроил Kenesis Firehose для записи всех событий электронной почты (например, Send, Bounce, Click) в корзину в S3. SES, кажется, предоставляет инструменты для массового анализа огромного количества электронных писем, но я хочу видеть результаты для каждого отдельного получателя. Не знаю, упустил ли я что-то, но я нашел единственный способ сделать это - загрузить файлы с S3 и проанализировать их в электронной таблице. Для этого я разработал довольно сложную электронную таблицу.

Файлы хранятся в S3 в иерархии папок по месяцам, дням и часам. Консоль S3 позволяет мне загружать каждый файл индивидуально, перемещаясь по дереву папок вручную и щелкая каждый файл правой кнопкой мыши. В документации консоли S3 сказано :

Вы можете загрузить один объект за запрос с помощью консоли Amazon S3. Чтобы загрузить несколько объектов, используйте AWS CLI, AWS SDK или REST API.

Я познакомился с AWS SDK для PHP и использую его для отправки сообщений электронной почты в SES. В Руководстве разработчика S3 есть инструкции по Получить объект с помощью AWS SDK для PHP . Похоже, что в нем нет инструкций по получению нескольких объектов, и я думаю, что могу добиться этого, написав цикл по папкам и файлам.

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

Итак, сейчас это выглядит так: чтобы загрузить все файлы в папке, мне нужно либо написать программу SDK, либо установить интерфейс командной строки и изучить команду sync . Либо одно из них кажется большим трудом для того, что я могу сделать в Windows с помощью мыши или в Filezilla с помощью двойного щелчка мыши. Мне что-то не хватает, или мне действительно нужно делать всю эту работу, просто чтобы загрузить файлы в дереве папок?

Windows и Filezilla также легко позволяют мне видеть все дерево папок сразу со всеми файлами в каждой папке. Консоль S3 позволяет мне видеть только одну подпапку за раз. Опять же, нужно ли мне писать программу SDK или изучать интерфейс командной строки только для того, чтобы получить список дерева папок?

Хотя я задаю эти два вопроса, я хотел бы еще кое-что, что было бы полезно, - это увидеть количество строк в каждом файле, потому что каждая строка представляет событие SES. Я легко получу эту информацию из моего анализа после того, как у меня будут файлы, но я удивлен, что SES, похоже, не дает мне возможности увидеть количество событий, кроме как путем выполнения этого анализа. Это правильно, или я пропустил что-то в SES, которое могло бы дать мне эту информацию?

И последний вопрос: все вышеперечисленное было бы ненужным, если бы я мог просто попросить SES предоставить мне дамп всех данные о событии. Единственный способ получить эти данные, который я нашел, - это загрузить эти файлы S3, которые затем мне нужно объединить в свою электронную таблицу. Итак, снова не упустил ли я что-то в SES, что позволило бы мне получить все данные о событиях, не прибегая к этой чепухе в S3?

1
задан 3 June 2020 в 17:17
1 ответ

Вы можете просто использовать cyberduck для просмотра и загрузки файлов или использовать Athena для анализа данных непосредственно из S3

2
ответ дан 3 June 2020 в 15:29

Теги

Похожие вопросы