public SQS_Consumer(AppConfig appConfig) { _awsConfig = appConfig; AmazonSQSConfig amazonSQSConfig = new AmazonSQSConfig(); try { var config = new AmazonSQSConfig() { RegionEndpoint = Amazon.RegionEndpoint.USEast1 //ServiceURL = "https://sqs.us-east-1.amazonaws.com/283124460764/NewProvisioning" // Region and URL }; //_messageRequest.QueueUrl = _appConfig.AwsQueueURL; var awsCredentials = new AwsCredentials(_awsConfig); _client = new AmazonSQSClient(awsCredentials, config); //Create object for DB Operations transactionRecord = new TransactionsRecord(awsCredentials); } catch (Exception ex) { } }
public TransactionsRecord(AwsCredentials awsCredentials) { try { var dynamoDbConfig = new AmazonDynamoDBConfig { RegionEndpoint = RegionEndpoint.USEast1 }; client = new AmazonDynamoDBClient(awsCredentials, dynamoDbConfig); dbContext = new DynamoDBContext(client); } catch (AmazonServiceException e) { Console.WriteLine(e.Message); } catch (Exception e) { Console.WriteLine(e.Message); } }
//Read records from DB. //Filter records with Error //Push the errorneous records for retry in SQS public async Task <string> FunctionHandler(object input, ILambdaContext context) { _appConfig = new AppConfig(); _appConfig.AwsAccessKey = "XXX"; _appConfig.AwsSecretKey = "YYY"; AwsCredentials awsCredentials = new AwsCredentials(_appConfig); _client = new SQS_Consumer(_appConfig); transactionRecord = new TransactionsRecord(awsCredentials); await ProcessErrorRecord(); return("success"); }