Экспорт журналов Cloudwatch в исходный формат

Я ищу способ экспортировать журналы CW в их исходной форме в s3. Я использовал консоль для экспорта журналов за несколько дней из группы журналов, и кажется, что к каждой строке добавлялась временная метка, нарушая исходное форматирование JSON. Я хотел импортировать это в клей как файл json для сценария тестового преобразования. Исходные используемые данные форматируются как обычная строка json при импорте в cloudwatch и обычно обрабатывают данные, которые выглядят так:

{ "a": 123, "b": "456", "c": 789 }

После экспорта и распаковки данных это выглядит как

2019-06-28T00:00:00.099Z { "a": 123, "b": "456", "c": 789 }

Что нарушает чтение строки как строки json, поскольку это не стандартный формат.

Набор данных довольно велик (более 100 ГБ) для этого прогона и, возможно, будет расти в будущем, поэтому выполнение команды CLI и обработка каждой строки локально, на мой взгляд, неосуществимы. Есть ли какой-нибудь известный способ сделать то, что я собираюсь делать?

Спасибо


person Eumcoz    schedule 02.07.2019    source источник


Ответы (1)


Метки времени добавляются автоматически, когда вы отправляете журналы в CloudWatch. Все события журнала, присутствующие в CloudWatch, имеют отметку времени.

Вы можете создать фильтр подписки для Kinesis Firehose, а на Kinesis с помощью лямбда-функции вы можете сформировать события журнала (удалить отметку времени), а затем сохранить журналы в S3.

https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/Subscriptions.html

person blueBatman    schedule 06.07.2019