Я построил лямбду, которая собирает логи из экземпляра EC2 и ежедневно загружает их в S3-контейнеры.Журналы хранятся в виде файлов .gz, и теперь я хочу создать другую лямбду, которая собирает последний загруженный файл журнала, распаковывает его, записывает в файл CSV и затем возвращает его обратно в s3.
Мне удалось собрать файл журнала, разархивировать его и отправить обратно, но я хотел бы получить несколько указаний о том, как настроить таргетинг на самый последний файл в корзине s3 и как записать его в CSV-файл дотолкая его обратно.
Я использую Python для своей лямбды, и вот как мой код выглядит сейчас:
def lambda_handler(event, context):
s3 = boto3.client('s3', use_ssl = False)
s3.upload_fileobj(
Fileobj = gzip.GzipFile(
None,
'rb',
fileobj = BytesIO(
s3.get_object(Bucket='bucketName', Key='key')['Body'].read())),
Bucket ='bucketName',
Key ='key')