Обрабатывать логи доступа s3 с помощью AWS datapipeline

Мой пример использования - периодически обрабатывать журналы доступа S3 (с этими 18 полями) и передавать их в таблицу RDS. Я использую конвейер данных AWS для выполнения этой задачи каждый день, чтобы обрабатывать журналы предыдущего дня.

Я решил разделить задачу на два действия: 1. Командная операция оболочки: обработка журналов доступа s3 и создание файла csv. 2. Операция куста: чтение данных из файла csv и вставка их в таблицу RDS.

В моем входном контейнере s3 есть много файлов журналов, поэтому первая операция завершается неудачно из-за нехватки памяти во время постановки. Однако я не хочу ставить все журналы, для меня достаточно постановки журнала предыдущего дня. Я искал по интернету, но не нашел никакого решения. Как мне этого добиться? Является ли мое решение оптимальным? Существует ли какое-либо решение лучше, чем это? Любые предложения будут полезны

Заранее спасибо

3 ответа

Вы можете определить свой узел данных S3, используя временные метки. Например, вы можете сказать, что путь к каталогу

s3://yourbucket/ #{format(@scheduledStartTime, 'YYYY-MM-dd-HH-mm-ss')}

Поскольку ваши файлы журналов должны иметь метку времени в имени (или они могут быть организованы по каталогам с метками времени).

Это только установит файлы, соответствующие этому шаблону.

Могу я спросить, почему вы загружаете журналы доступа в RDS? ELK может быть отличным решением для вас. Вы можете создать его самостоятельно или использовать ELK-as-a-service из Logz.io (я работаю для Logz.io).

Он позволяет вам легко определить сегмент S3, регулярно читать все журналы из него и загружать их в ELK, а также просматривать их на предварительно настроенных информационных панелях.

Возможно, вы воссоздаете решение, которое уже сделано Logstash (или, точнее, стеком ELK).

http://logstash.net/docs/1.4.2/inputs/s3

Logstash может использовать файлы S3.

Вот ветка по чтению логов доступа с S3

https://groups.google.com/forum/

Мы используем Splunk (несвободный), который имеет те же возможности через свой плагин AWS.

Другие вопросы по тегам