in 8-MediaConvertEvents/simple_event_collector.py [0:0]
def lambda_handler(event, context):
print(json.dumps(event))
job = {}
tsevent = int(datetime.datetime.strptime(event["time"], "%Y-%m-%dT%H:%M:%SZ").timestamp())
try:
# Get environment variables set on the CloudFormation stack
EVENTTABLE = os.environ['EventTable']
EVENTTABLETTL = os.environ['EventTableTTL']
EVENT_RETENTION_PERIOD = (3600 * 24 * int(EVENTTABLETTL))
# add expirtation timestamp for dynamo and save the event in dynamo
event["timestamp"] = tsevent
event["timestampTTL"] = tsevent + EVENT_RETENTION_PERIOD
event["jobId"] = event['detail']['jobId']
s = json.dumps(event, cls=DecimalEncoder)
event = json.loads(s, parse_float=decimal.Decimal)
table = DYNAMO_CLIENT.Table(EVENTTABLE)
response = table.put_item(Item = event)
print(json.dumps(response, cls=DecimalEncoder))
except Exception as e:
print('An error occured {}'.format(e))
traceback.print_stack()
raise
else:
return True