in code/ct_flowlog_activator.py [0:0]
def flow_log_handler(target_session, event, partition, resource_id, resource_type, tags, account_id, region):
'''
Handles the creation / deletion of vpc flow log, triggered by CloudWatch event Tag create / update / delete
'''
try:
LOGGER.info('Target Account id: {}'.format(account_id))
LOGGER.info('Target Region: {}'.format(region))
LOGGER.info('Target Resource id: {}'.format(resource_id))
LOGGER.info('Target Resource Type: {}'.format(resource_type))
# Proceed to check FlowLog status
flowlog_status = get_flow_log_status(target_session, account_id, resource_id, region)
if flowlog_status > 0:
LOGGER.info('Flow Logs currently enabled - Traffic Mode: {}'.format(traffic_mode[flowlog_status]))
else:
LOGGER.info('Flow Logs currently disabled')
flowlog_tag = parse_flowlog_tag(tags, resource_type)
toggle_flowlog(target_session, account_id, resource_id, resource_type, flowlog_tag, flowlog_status, region)
except Exception as e:
LOGGER.error('Error - reason: {}'.format(e), exc_info=True)