import os from typing import Any, Dict # These imports may show as linting errors in local IDE but will work # in the AWS Lambda environment where lambdacommon and datadog_lambda are installed # pylint: disable=import-error from lambdacommon.common_config import logger from datadog_lambda.metric import lambda_metric # pylint: enable=import-error from config import Config, APPLICATION_NAME, PROD_ENVIRONMENT from src.handler import lambda_handler as main_lambda_handler_function def lambda_handler(event, context): # Log event information event_type = 'unknown' if isinstance(event, dict): event_type = event.get('detail-type', 'unknown') logger.info('Lambda invoked', extra={'event_type': event_type}) # Set up context for logging log_context: Dict[str, Any] = { 'requestID': context.aws_request_id, } # Note: We're adapting to the handler function signature which expects # event, context, and optional parameters return main_lambda_handler_function(event, context, payload=None, lambda_context=context, log_context=log_context)