/// <inheritdoc />
        /// <summary>
        /// This overriding method is what the Lambda function handler points to.
        /// </summary>
        public override async Task <APIGatewayHttpApiV2ProxyResponse> FunctionHandlerAsync(APIGatewayHttpApiV2ProxyRequest request, ILambdaContext lambdaContext)
        {
            if (!TelemetryConfiguration.TracingEnabled && !TelemetryConfiguration.MetricsEnabled)
            {
                return(await base.FunctionHandlerAsync(request, lambdaContext).ConfigureAwait(false));
            }

            return(await s_functionWrapper.InvokeAPIGatewayHttpApiV2ProxyAsync(
                       base.FunctionHandlerAsync,
                       request,
                       lambdaContext).ConfigureAwait(false));
        }