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块中,用于处理错误并返回一个适当的响应。

相关内容

热门资讯

分享实测!微乐自建房辅助工具,... 分享实测!微乐自建房辅助工具,微乐小程序免费黑科技(开挂自建房)软件1、首先打开微乐自建房辅助工具辅...
推荐一款!微乐微信自建房辅助工... 推荐一款!微乐微信自建房辅助工具插件,微乐小程序免费黑科技(开挂自建房)插件1、任何微乐微信自建房辅...
实测揭晓!微乐自建房辅助工具插... 实测揭晓!微乐自建房辅助工具插件,微乐家乡麻将自建房辅助app(开挂自建房)攻略;所有人都在同一条线...
盘点一款!微乐小程序麻将自建房... 盘点一款!微乐小程序麻将自建房辅助工具插件,微乐家乡麻将自建房辅助app(开挂自建房)教程1、微乐小...
推荐十款!微乐自建房辅助工具脚... 推荐十款!微乐自建房辅助工具脚本,微乐小程序免费黑科技(开挂自建房)教程1、微乐自建房辅助工具脚本辅...
盘点几款!微乐自建房辅助工具免... 盘点几款!微乐自建房辅助工具免费app,微乐自建房脚本免费入口(开挂自建房)app1.微乐自建房辅助...
最新技巧!微信卡五星辅助器,微... 最新技巧!微信卡五星辅助器,微乐自建房脚本免费入口(开挂自建房)方法微信卡五星辅助器透视方法中分为三...
实操分享!微乐自建房辅助工具免... 实操分享!微乐自建房辅助工具免费app,微乐小程序免费黑科技(开挂自建房)软件1、进入游戏-大厅左侧...
技术分享!微信卡五星辅助器,微... 技术分享!微信卡五星辅助器,微乐自建房脚本免费入口(开挂自建房)工具1)微信卡五星辅助器有没有挂:进...
盘点十款!微乐自建房辅助工具,... 盘点十款!微乐自建房辅助工具,微乐家乡麻将自建房辅助app(开挂自建房)软件1、任何微乐家乡麻将自建...