public ScheduledQueryExample(IAmazonTimestreamWrite amazonTimestreamWrite,
                              IAmazonTimestreamQuery amazonTimestreamQuery,
                              TimestreamDependencyHelper timestreamDependencyHelper,
                              TimestreamCrudHelper timestreamCrudHelper, QueryExample queryRunner, String region, IAmazonS3 s3ClientEndPoint)
 {
     _amazonTimestreamWrite      = amazonTimestreamWrite;
     _amazonTimestreamQuery      = amazonTimestreamQuery;
     _timestreamDependencyHelper = timestreamDependencyHelper;
     _timestreamCrudHelper       = timestreamCrudHelper;
     _queryRunner   = queryRunner;
     regionEndpoint = RegionEndpoint.GetBySystemName(region);
     s3Client       = s3ClientEndPoint;
     iamClient      = new AmazonIdentityManagementServiceClient(regionEndpoint);
     snsClient      = new AmazonSimpleNotificationServiceClient(regionEndpoint);
     sqsClient      = new AmazonSQSClient(regionEndpoint);
 }
        public async Task CreateTable(IAmazonTimestreamWrite writeClient, string databaseName, string tableName, string s3ErrorReportBucketName)
        {
            Console.WriteLine($"Creating Table {tableName}");

            try
            {
                var createTableRequest = new CreateTableRequest
                {
                    DatabaseName        = databaseName,
                    TableName           = tableName,
                    RetentionProperties = new RetentionProperties
                    {
                        MagneticStoreRetentionPeriodInDays = Constants.CT_TTL_DAYS,
                        MemoryStoreRetentionPeriodInHours  = Constants.HT_TTL_HOURS
                    },
                    // Enable MagneticStoreWrite
                    MagneticStoreWriteProperties = new MagneticStoreWriteProperties
                    {
                        EnableMagneticStoreWrites = true,
                        // Persist MagneticStoreWrite rejected records in S3
                        MagneticStoreRejectedDataLocation = new MagneticStoreRejectedDataLocation {
                            S3Configuration = new S3Configuration {
                                BucketName       = s3ErrorReportBucketName,
                                EncryptionOption = "SSE_S3",
                            },
                        },
                    }
                };
                await writeClient.CreateTableAsync(createTableRequest);

                Console.WriteLine($"Table {tableName} created");
            }
            catch (ConflictException)
            {
                Console.WriteLine("Table already exists.");
            }
            catch (Exception e)
            {
                Console.WriteLine($"Create table failed: {e}");
            }
        }
        public async Task DeleteDatabase(IAmazonTimestreamWrite writeClient, string databaseName)
        {
            Console.WriteLine($"Deleting database {databaseName}");
            try
            {
                var deleteDatabaseRequest = new DeleteDatabaseRequest
                {
                    DatabaseName = databaseName
                };
                DeleteDatabaseResponse response = await writeClient.DeleteDatabaseAsync(deleteDatabaseRequest);

                Console.WriteLine($"Database {databaseName} delete request status:{response.HttpStatusCode}");
            }
            catch (ResourceNotFoundException)
            {
                Console.WriteLine($"Database {databaseName} does not exists");
            }
            catch (Exception e)
            {
                Console.WriteLine($"Exception while deleting database: {e}");
            }
        }
        public async Task CreateDatabase(IAmazonTimestreamWrite writeClient, string databaseName)
        {
            Console.WriteLine($"Creating Database {databaseName}");

            try
            {
                var createDatabaseRequest = new CreateDatabaseRequest
                {
                    DatabaseName = databaseName
                };
                await writeClient.CreateDatabaseAsync(createDatabaseRequest);

                Console.WriteLine($"Database {databaseName} created");
            }
            catch (ConflictException)
            {
                Console.WriteLine("Database already exists.");
            }
            catch (Exception e)
            {
                Console.WriteLine($"Create database failed: {e}");
            }
        }
 internal ListDatabasesPaginator(IAmazonTimestreamWrite client, ListDatabasesRequest request)
 {
     this._client  = client;
     this._request = request;
 }
Beispiel #6
0
 private Amazon.TimestreamWrite.Model.DeleteDatabaseResponse CallAWSServiceOperation(IAmazonTimestreamWrite client, Amazon.TimestreamWrite.Model.DeleteDatabaseRequest request)
 {
     Utils.Common.WriteVerboseEndpointMessage(this, client.Config, "Amazon Timestream Write", "DeleteDatabase");
     try
     {
         #if DESKTOP
         return(client.DeleteDatabase(request));
         #elif CORECLR
         return(client.DeleteDatabaseAsync(request).GetAwaiter().GetResult());
         #else
                 #error "Unknown build edition"
         #endif
     }
     catch (AmazonServiceException exc)
     {
         var webException = exc.InnerException as System.Net.WebException;
         if (webException != null)
         {
             throw new Exception(Utils.Common.FormatNameResolutionFailureMessage(client.Config, webException.Message), webException);
         }
         throw;
     }
 }
Beispiel #7
0
 internal TimestreamWritePaginatorFactory(IAmazonTimestreamWrite client)
 {
     this.client = client;
 }
        protected override void ProcessRecord()
        {
            base.ProcessRecord();

            Client = CreateClient(_CurrentCredentials, _RegionEndpoint);
        }