CloudWatch Журналы в Python Лямбда-функция - PullRequest
0 голосов
/ 20 февраля 2019

Я хочу поместить запись в таблицу Dynamo-DB, как только я поместил объект в файл S3.Я установил триггеры для того же самого.

Я написал простой ниже лямбад-код для проверки ответа

def lambda_handler(event, context):
    print(str(event))

Когда я проверяю в CLoudWatchLogs, я могу видеть ниже.

{'Records': [{'eventVersion': '2.1', 'eventSource': 'aws:s3', 
'awsRegion': 'us-east-1', 'eventTime': '2019-02-20T15:58:48.057Z', 
'eventName': 'ObjectCreated:Put', 'userIdentity': {'principalId': 
'AHRO8PUVZ6HA1'}, 'requestParameters': {'sourceIPAddress': 
'106.193.192.255'}, 'responseElements': {'x-amz-request-id': 
'218359C00133F5A3', 'x-amz-id-2': 
 'ZcA26gyzVOaaG+O1AgbZl6UTGjdqxvz0THfeyGepwPwkn8No2m+
 2jCm/zHvMGH1igrATG1pAnQI='}, 's3': {'s3SchemaVersion': '1.0', 
'configurationId': 'd4eeba8b-3cab-43d2-835a-2d6fed343144', 'bucket': 
 {'name': 'trus-bucket-291902', 'ownerIdentity': {'principalId': 
 'AHRO8PUVZ6HA1'}, 'arn': 'arn:aws:s3:::trus-bucket-291902'}, 'object': 
 {'key': 'Linux-admin-Lecture-14.pdf', 'size': 113847, 'eTag': 
'a8b3f353134bfaf7e876e05b439c7632', 'sequencer': '005C6D7937E630A6EB'}}}]}

Можете ли вы помочь мне получить имя объекта (Linux-admin-Lecture-14.pdf) и размер (113847) из приведенной выше строки?

1 Ответ

0 голосов
/ 20 февраля 2019

Событие - это обычный словарь Python, поэтому доступ к нему осуществляется обычным способом

key = event['Records'][0]['s3']['object']['key']
...