public async Task <MonitoringSummaryResponse> GetResources(string region) { dynamoDBRepository = new DynamoDBRepository(); dynamoDBRepository.Region = region; var response = await dynamoDBRepository.GetDynamoDBList(); var resources = response.TableNames; return(new MonitoringSummaryResponse() { Label = "AWS/DynamoDB", Count = resources.Count, ResourcesId = resources }); }
public async Task <object> GetResourceDetails(MonitoringResourceRequest monitoringResourceRequest) { dynamoDBRepository = new DynamoDBRepository(); dynamoDBRepository.Region = monitoringResourceRequest.Region; var response = await dynamoDBRepository.GetDynamoDBList(monitoringResourceRequest.ResourceIds); var filterResponse = response.Select(x => x.Table).Select(x => new DynamoDBResponse() { Indexes = String.Join(",", x.GlobalSecondaryIndexes?.Select(y => y.IndexName)), PartitionKey = x.KeySchema?.FirstOrDefault(y => y.KeyType.Value.Equals("partition key"))?.AttributeName, Name = x.TableName, SortKey = x.KeySchema?.FirstOrDefault(y => y.KeyType.Value.Equals("sort key"))?.AttributeName, Status = x.TableStatus?.Value, TableSize = x.TableSizeBytes.ToString(), CreatedDate = x.CreationDateTime.ToString() }); return(filterResponse); }