def lambda_handler()

in src/lamdas/dynamodb-logging/dynamodb_logging.py [0:0]


def lambda_handler(event, context):
    log_level = str(os.environ.get("LOG_LEVEL")).upper()
    if log_level not in ["DEBUG", "INFO", "WARNING", "ERROR", "CRITICAL"]:
        log_level = "ERROR"
    logging.getLogger().setLevel(log_level)
    logging.info(event)

    time_stamp = datetime.datetime.now().strftime("%Y-%m-%d_%H-%M-%S")
    OutputDate = (
        event["db_logging_status"] + "_" + event["product_name"] + "_" + time_stamp
    )

    if event["db_logging_status"] == "SEGMENT_FAILED":
        response = table.put_item(
            Item={
                "OutputDate": OutputDate,
                "interest": event["interest"],
                "product_name": event["product_name"],
                "product_link": event["product_link"],
            }
        )
        SegmentId = "NA"
        CampaignStatus = "NA"
        CampaignId = "NA"
        Start = "NA"
        End = "NA"
        TotalEndpointCount = "NA"
        SuccessfulEndpointCount = "NA"
    elif event["db_logging_status"] == "CAMPAIGN_FAILED":
        response = table.put_item(
            Item={
                "OutputDate": OutputDate,
                "interest": event["interest"],
                "product_name": event["product_name"],
                "product_link": event["product_link"],
                "SegmentId": event["SegmentId"],
                "CampaignStatus": event["CampaignStatus"],
            }
        )
        SegmentId = event["SegmentId"]
        CampaignStatus = event["CampaignStatus"]
        CampaignId = "NA"
        Start = "NA"
        End = "NA"
        TotalEndpointCount = "NA"
        SuccessfulEndpointCount = "NA"
    elif event["db_logging_status"] == "SEGMENT_CAMPAIGN_SUCCESS":
        response = table.put_item(
            Item={
                "OutputDate": OutputDate,
                "SegmentId": event["SegmentId"],
                "interest": event["interest"],
                "product_name": event["product_name"],
                "product_link": event["product_link"],
                "CampaignStatus": event["CampaignStatus"],
                "CampaignId": event["CampaignId"],
                "Start": event["Start"],
                "End": event["End"],
                "TotalEndpointCount": event["TotalEndpointCount"],
                "SuccessfulEndpointCount": event["SuccessfulEndpointCount"],
            }
        )
        SegmentId = event["SegmentId"]
        CampaignStatus = event["CampaignStatus"]
        CampaignId = event["CampaignId"]
        Start = event["Start"]
        End = event["End"]
        TotalEndpointCount = event["TotalEndpointCount"]
        SuccessfulEndpointCount = event["SuccessfulEndpointCount"]

    logging.info(response)
    return {
        "SegmentId": event["SegmentId"],
        "interest": event["interest"],
        "product_name": event["product_name"],
        "product_link": event["product_link"],
        "CampaignStatus": CampaignStatus,
        "CampaignId": CampaignId,
        "Start": Start,
        "End": End,
        "TotalEndpointCount": TotalEndpointCount,
        "SuccessfulEndpointCount": SuccessfulEndpointCount,
    }