AWSC#Lambda尝试使用Snowflake.Data发出connection.Open命令时超时。
创始人
2024-09-24 01:01:01
0

这可能是Lambda执行时间限制的问题。要解决这个问题,您可以尝试在Lambda函数的代码中添加超时和错误处理。以下是一个示例代码,使用AWS SDK for .NET中的Amazon.Snowflake.AspNetCore.Client扩展来连接Snowflake数据库,并设置三秒的超时限制:

using System;
using System.Threading.Tasks;
using Amazon.Lambda.Core;
using Amazon.Lambda.APIGatewayEvents;
using Amazon.Snowflake.AspNetCore.Client;

namespace Lambda.Function
{
    public class FunctionHandler
    {
        private readonly SnowflakeQueryExecutor _snowflakeQueryExecutor;
        private const int TIMEOUT_SECONDS = 3;

        public FunctionHandler()
        {
            _snowflakeQueryExecutor = new SnowflakeQueryExecutor();
        }

        public async Task FunctionHandlerAsync(APIGatewayProxyRequest request, ILambdaContext context)
        {
            context.Logger.LogLine($"Function {context.FunctionName} was called");
            try
            {
                var connectionString = "account={account};user={user};password={password};";
                var connectionOptions = new SnowflakeConnectionOptions(connectionString, TIMEOUT_SECONDS);
                await _snowflakeQueryExecutor.ExecuteQueryAsync("SELECT 1;", connectionOptions);
                return new APIGatewayProxyResponse
                {
                    StatusCode = 200,
                    Body = "Success",
                };
            }
            catch (Exception ex)
            {
                context.Logger.LogLine($"Exception: {ex.Message}");
                return new APIGatewayProxyResponse
                {
                    StatusCode = 500,
                    Body = "Internal Server Error",
                };
            }
        }
    }
}

此代码中,SnowflakeConnectionOptions类被用来包装数据库连接字符串和超时时间。在ExecuteQueryAsync方法中,连接选项将被传递给Snowflake Query Executor来执行查询。如果函数在三秒内不能执行完全,它将抛出一个超时异常。这个异常可以被包含在try-catch块中,用于处理错误并返回一个适当的响应。

相关内容

热门资讯

7分钟科普!微乐小程序辅助器出... 7分钟科普!微乐小程序辅助器出租(辅助挂)其实是有挂(透明挂教程开挂辅助插件);无需打开直接搜索加(...
四分钟明白!微信牵手跑辅助下载... 四分钟明白!微信牵手跑辅助下载(辅助挂)原来真的有挂(大神讲解开挂辅助软件)《详细加薇1367043...
9分钟详情!福建十三水软件开发... 9分钟详情!福建十三水软件开发(辅助挂)原来真的有挂(2026新版开挂辅助插件)>>您好:软件加13...
第五分钟讲解!微信小程序修改器... 微信小程序修改器是一款可以让一直输的玩家,快速成为一个“必胜”的ai辅助神器,有需要的用户可以加我微...
9分钟了解!潮友会鱼虾蟹骰子概... 【亲,潮友会鱼虾蟹骰子概率计算公式 这款游戏可以开挂的,确实是有挂的,很多玩家在这款潮友会鱼虾蟹骰子...
第四分钟发现!心动休闲辅助(辅... 第四分钟发现!心动休闲辅助(辅助挂)其实是有挂的(透明挂教程开挂辅助插件) 了解更多开挂安装加(13...
9分钟透视!闲逸软件安卓(辅助... 大家好,今天小编来为大家解答闲逸软件安卓这个问题咨询软件客服可以免费测试直接加微信(13670430...
第四分钟辅助!对联猜猜看辅助器... 第四分钟辅助!对联猜猜看辅助器(辅助挂)原来有挂(必备教程开挂辅助软件)您好:对联猜猜看辅助器这款游...
第九分钟明白!广西友乐辅助软件... 【亲,广西友乐辅助软件 这款游戏可以开挂的,确实是有挂的,很多玩家在这款广西友乐辅助软件中打牌都会发...
第一分钟辅助!反杀大厅辅助(辅... 第一分钟辅助!反杀大厅辅助(辅助挂)原来是有挂的(科技教程开挂辅助工具)【无需打开直接搜索加薇136...