protected override void ProcessRecord() { base.ProcessRecord(); ListBackupsRequest request; try { request = new ListBackupsRequest { CompartmentId = CompartmentId, OpcRequestId = OpcRequestId, BackupId = BackupId, LifecycleState = LifecycleState, DbSystemId = DbSystemId, DisplayName = DisplayName, SortBy = SortBy, SortOrder = SortOrder, Limit = Limit, Page = Page }; IEnumerable <ListBackupsResponse> responses = GetRequestDelegate().Invoke(request); foreach (var item in responses) { response = item; WriteOutput(response, response.Items, true); } FinishProcessing(response); } catch (Exception ex) { TerminatingErrorDuringExecution(ex); } }
protected override void ProcessRecord() { base.ProcessRecord(); ListBackupsRequest request; try { request = new ListBackupsRequest { DatabaseId = DatabaseId, CompartmentId = CompartmentId, Limit = Limit, Page = Page }; IEnumerable <ListBackupsResponse> responses = GetRequestDelegate().Invoke(request); foreach (var item in responses) { response = item; WriteOutput(response, response.Items, true); } FinishProcessing(response); } catch (Exception ex) { TerminatingErrorDuringExecution(ex); } }
protected override void ProcessRecord() { base.ProcessRecord(); ListBackupsRequest request; try { request = new ListBackupsRequest { DatabaseId = DatabaseId, CompartmentId = CompartmentId, Limit = Limit, Page = Page }; IEnumerable <ListBackupsResponse> responses = GetRequestDelegate().Invoke(request); foreach (var item in responses) { response = item; WriteOutput(response, response.Items, true); } if (!ParameterSetName.Equals(AllPageSet) && !ParameterSetName.Equals(LimitSet) && response.OpcNextPage != null) { WriteWarning("This operation supports pagination and not all resources were returned. Re-run using the -All option to auto paginate and list all resources."); } FinishProcessing(response); } catch (Exception ex) { TerminatingErrorDuringExecution(ex); } }
/// <summary> /// 查询备份列表 /// </summary> public static void ListBackups(DdsClient client) { ListBackupsRequest req = new ListBackupsRequest { InstanceId = "fd1cac0eee0f4ad5a139a4dd6e994ea7in02", Limit = 1 }; try { ListBackupsResponse resp = client.ListBackups(req); Console.WriteLine(resp.TotalCount); foreach (var backup in resp.Backups) { Console.WriteLine(backup.Id); Console.WriteLine(backup.Datastore.Version); } Console.WriteLine("List Backups Success!"); } catch (RequestTimeoutException requestTimeoutException) { Console.WriteLine(requestTimeoutException.ErrorMessage); } catch (ServiceResponseException clientRequestException) { Console.WriteLine(clientRequestException.HttpStatusCode); Console.WriteLine(clientRequestException.ErrorCode); Console.WriteLine(clientRequestException.ErrorMsg); } catch (ConnectionException connectionException) { Console.WriteLine(connectionException.ErrorMessage); } }
/// <summary> /// Get a list of DB System backups. /// /// </summary> /// <param name="request">The request object containing the details to send. Required.</param> /// <param name="retryConfiguration">The retry configuration that will be used by to send this request. Optional.</param> /// <param name="cancellationToken">The cancellation token to cancel this operation. Optional.</param> /// <returns>A response object containing details about the completed operation</returns> /// <example>Click <a href="https://docs.cloud.oracle.com/en-us/iaas/tools/dot-net-examples/latest/mysql/ListBackups.cs.html">here</a> to see an example of how to use ListBackups API.</example> public async Task <ListBackupsResponse> ListBackups(ListBackupsRequest request, RetryConfiguration retryConfiguration = null, CancellationToken cancellationToken = default) { logger.Trace("Called listBackups"); Uri uri = new Uri(this.restClient.GetEndpoint(), System.IO.Path.Combine(basePathWithoutHost, "/backups".Trim('/'))); HttpMethod method = new HttpMethod("GET"); HttpRequestMessage requestMessage = Converter.ToHttpRequestMessage(uri, method, request); requestMessage.Headers.Add("Accept", "application/json"); GenericRetrier retryingClient = Retrier.GetPreferredRetrier(retryConfiguration, this.retryConfiguration); HttpResponseMessage responseMessage; try { if (retryingClient != null) { responseMessage = await retryingClient.MakeRetryingCall(this.restClient.HttpSend, requestMessage, cancellationToken).ConfigureAwait(false); } else { responseMessage = await this.restClient.HttpSend(requestMessage).ConfigureAwait(false); } this.restClient.CheckHttpResponseMessage(requestMessage, responseMessage); return(Converter.FromHttpResponseMessage <ListBackupsResponse>(responseMessage)); } catch (Exception e) { logger.Error($"ListBackups failed with error: {e.Message}"); throw; } }
/// <summary> /// 根据指定条件查询备份列表 /// </summary> public ListBackupsResponse ListBackups(ListBackupsRequest listBackupsRequest) { Dictionary <string, string> urlParam = new Dictionary <string, string>(); string urlPath = HttpUtils.AddUrlPath("/v3/{project_id}/backups", urlParam); SdkRequest request = HttpUtils.InitSdkRequest(urlPath, listBackupsRequest); SdkResponse response = DoHttpRequest("GET", request); return(JsonUtils.DeSerialize <ListBackupsResponse>(response)); }
/// <summary> /// 查询所有备份 /// </summary> public async Task <ListBackupsResponse> ListBackupsAsync(ListBackupsRequest listBackupsRequest) { Dictionary <string, string> urlParam = new Dictionary <string, string>(); string urlPath = HttpUtils.AddUrlPath("/v3/{project_id}/backups", urlParam); SdkRequest request = HttpUtils.InitSdkRequest(urlPath, "application/json", listBackupsRequest); HttpResponseMessage response = await DoHttpRequestAsync("GET", request); return(JsonUtils.DeSerialize <ListBackupsResponse>(response)); }
private async Task DeleteStaleBackupsAndDatabasesAsync() { DatabaseAdminClient databaseAdminClient = DatabaseAdminClient.Create(); var instanceName = InstanceName.FromProjectInstance(ProjectId, InstanceId); var databases = databaseAdminClient.ListDatabases(instanceName) .Where(c => c.DatabaseName.DatabaseId.StartsWith("my-db-") || c.DatabaseName.DatabaseId.StartsWith("my-restore-db-")); var databasesToDelete = new List <string>(); // Delete all the databases created before 48 hrs. var timestamp = DateTimeOffset.UtcNow.AddHours(-48).ToUnixTimeMilliseconds(); foreach (var database in databases) { var databaseId = database.DatabaseName.DatabaseId.Replace("my-restore-db-", "").Replace("my-db-", ""); if (long.TryParse(databaseId, out long dbCreationTime) && dbCreationTime <= timestamp) { databasesToDelete.Add(database.DatabaseName.DatabaseId); } } await Console.Out.WriteLineAsync($"{databasesToDelete.Count} old databases found."); // Get backups. ListBackupsRequest request = new ListBackupsRequest { ParentAsInstanceName = instanceName, Filter = $"database:my-db-" }; var backups = databaseAdminClient.ListBackups(request); // Backups that belong to the databases to be deleted. var backupsToDelete = backups.Where(c => databasesToDelete.Contains(DatabaseName.Parse(c.Database).DatabaseId)); await Console.Out.WriteLineAsync($"{backupsToDelete.Count()} old backups found."); // Delete the backups. foreach (var backup in backupsToDelete) { try { DeleteBackupSample deleteBackupSample = new DeleteBackupSample(); deleteBackupSample.DeleteBackup(ProjectId, InstanceId, backup.BackupName.BackupId); } catch (Exception) { } } // Delete the databases. foreach (var databaseId in databasesToDelete) { try { await DeleteDatabaseAsync(databaseId); } catch (Exception) { } } }
/// <summary> /// Creates a new enumerable which will iterate over the responses received from the ListBackups operation. This enumerable /// will fetch more data from the server as needed. /// </summary> /// <param name="request">The request object containing the details to send</param> /// <param name="retryConfiguration">The configuration for retrying, may be null</param> /// <param name="cancellationToken">The cancellation token object</param> /// <returns>The enumerator, which supports a simple iteration over a collection of a specified type</returns> public IEnumerable <ListBackupsResponse> ListBackupsResponseEnumerator(ListBackupsRequest request, Common.Retry.RetryConfiguration retryConfiguration = null, CancellationToken cancellationToken = default) { return(new Common.Utils.ResponseEnumerable <ListBackupsRequest, ListBackupsResponse>( response => response.OpcNextPage, input => { if (!string.IsNullOrEmpty(input)) { request.Page = input; } return request; }, request => client.ListBackups(request, retryConfiguration, cancellationToken) )); }
/// <summary>Snippet for ListBackupsAsync</summary> /// <remarks> /// This snippet has been automatically generated for illustrative purposes only. /// It may require modifications to work in your environment. /// </remarks> public async Task ListBackupsRequestObjectAsync() { // Create client BigtableTableAdminClient bigtableTableAdminClient = await BigtableTableAdminClient.CreateAsync(); // Initialize request argument(s) ListBackupsRequest request = new ListBackupsRequest { ParentAsClusterName = ClusterName.FromProjectInstanceCluster("[PROJECT]", "[INSTANCE]", "[CLUSTER]"), Filter = "", OrderBy = "", }; // Make the request PagedAsyncEnumerable <ListBackupsResponse, Backup> response = bigtableTableAdminClient.ListBackupsAsync(request); // Iterate over all response items, lazily performing RPCs as required await response.ForEachAsync((Backup item) => { // Do something with each item Console.WriteLine(item); }); // Or iterate over pages (of server-defined size), performing one RPC per page await response.AsRawResponses().ForEachAsync((ListBackupsResponse page) => { // Do something with each page of items Console.WriteLine("A page of results:"); foreach (Backup item in page) { // Do something with each item Console.WriteLine(item); } }); // Or retrieve a single page of known size (unless it's the final page), performing as many RPCs as required int pageSize = 10; Page <Backup> singlePage = await response.ReadPageAsync(pageSize); // Do something with the page of items Console.WriteLine($"A page of {pageSize} results (unless it's the final page):"); foreach (Backup item in singlePage) { // Do something with each item Console.WriteLine(item); } // Store the pageToken, for when the next page is required. string nextPageToken = singlePage.NextPageToken; }
public static void DelelteBackups() { DatabaseAdminClient databaseAdminClient = DatabaseAdminClient.Create(); //delete backup contains "a" var dataTime = DateTime.UtcNow.AddDays(1).ToString("yyyy-MM-dd"); var listBackupRequest = new ListBackupsRequest { Parent = InstanceName.Format(projectId, instanceId), Filter = $"create_time < {dataTime}" }; var backups = databaseAdminClient.ListBackups(listBackupRequest); foreach (var backup in backups) { var deleteBackupRequest = new DeleteBackupRequest() { Name = backup.Name }; databaseAdminClient.DeleteBackup(deleteBackupRequest); } }
public static object SpannerGetBackups( string projectId, string instanceId, string databaseId, string backupId) { // Create the DatabaseAdminClient instance. DatabaseAdminClient databaseAdminClient = DatabaseAdminClient.Create(); InstanceName parentAsInstanceName = InstanceName.FromProjectInstance(projectId, instanceId); // List all backups. Console.WriteLine("All backups:"); var allBackups = databaseAdminClient.ListBackups(parentAsInstanceName); PrintBackups(allBackups); ListBackupsRequest request = new ListBackupsRequest { ParentAsInstanceName = parentAsInstanceName, }; // List backups containing backup name. Console.WriteLine($"Backups with backup name containing {backupId}:"); request.Filter = $"name:{backupId}"; var backupsWithName = databaseAdminClient.ListBackups(request); PrintBackups(backupsWithName); // List backups on a database containing name. Console.WriteLine($"Backups with database name containing {databaseId}:"); request.Filter = $"database:{databaseId}"; var backupsWithDatabaseName = databaseAdminClient.ListBackups(request); PrintBackups(backupsWithDatabaseName); // List backups that expire within 30 days. Console.WriteLine("Backups expiring within 30 days:"); string expireTime = DateTime.UtcNow.AddDays(30).ToString("O"); request.Filter = $"expire_time < \"{expireTime}\""; var expiringBackups = databaseAdminClient.ListBackups(request); PrintBackups(expiringBackups); // List backups with a size greater than 100 bytes. Console.WriteLine("Backups with size > 100 bytes:"); request.Filter = "size_bytes > 100"; var backupsWithSize = databaseAdminClient.ListBackups(request); PrintBackups(backupsWithSize); // List backups created in the last day that are ready. Console.WriteLine("Backups created within last day that are ready:"); string createTime = DateTime.UtcNow.AddDays(-1).ToString("O"); request.Filter = $"create_time >= \"{createTime}\" AND state:READY"; var recentReadyBackups = databaseAdminClient.ListBackups(request); PrintBackups(recentReadyBackups); // List backups in pages. Console.WriteLine("Backups in batches of 5:"); int pageSize = 5; string nextPageToken = string.Empty; do { var response = databaseAdminClient.ListBackups(parentAsInstanceName, nextPageToken); Page <Backup> currentPage = response.ReadPage(pageSize); PrintBackups(currentPage); nextPageToken = currentPage.NextPageToken; } while (!string.IsNullOrEmpty(nextPageToken)); return(0); }
partial void Modify_ListBackupsRequest(ref ListBackupsRequest request, ref CallSettings settings) => ApplyResourcePrefixHeaderFromInstance(ref settings, request.Parent);
Task <ListBackupsResponse> IAmazonDynamoDB.ListBackupsAsync(ListBackupsRequest request, CancellationToken cancellationToken) { throw new NotSupportedException(); }
public Task <ListBackupsResponse> ListBackupsAsync(ListBackupsRequest request, CancellationToken cancellationToken = default(CancellationToken)) { throw new NotImplementedException(); }
public IEnumerable <Backup> ListBackups(string projectId, string instanceId, string databaseId, string backupId) { // Create the DatabaseAdminClient instance. DatabaseAdminClient databaseAdminClient = DatabaseAdminClient.Create(); InstanceName parentAsInstanceName = InstanceName.FromProjectInstance(projectId, instanceId); // List all backups. Console.WriteLine("All backups:"); var allBackups = databaseAdminClient.ListBackups(parentAsInstanceName); PrintBackups(allBackups); ListBackupsRequest request = new ListBackupsRequest { ParentAsInstanceName = parentAsInstanceName, }; // List backups containing backup name. Console.WriteLine($"Backups with backup name containing {backupId}:"); request.Filter = $"name:{backupId}"; var backupsWithName = databaseAdminClient.ListBackups(request); PrintBackups(backupsWithName); // List backups on a database containing name. Console.WriteLine($"Backups with database name containing {databaseId}:"); request.Filter = $"database:{databaseId}"; var backupsWithDatabaseName = databaseAdminClient.ListBackups(request); PrintBackups(backupsWithDatabaseName); // List backups that expire within 30 days. Console.WriteLine("Backups expiring within 30 days:"); string expireTime = DateTime.UtcNow.AddDays(30).ToString("O"); request.Filter = $"expire_time < \"{expireTime}\""; var expiringBackups = databaseAdminClient.ListBackups(request); PrintBackups(expiringBackups); // List backups with a size greater than 100 bytes. Console.WriteLine("Backups with size > 100 bytes:"); request.Filter = "size_bytes > 100"; var backupsWithSize = databaseAdminClient.ListBackups(request); PrintBackups(backupsWithSize); // List backups created in the last day that are ready. Console.WriteLine("Backups created within last day that are ready:"); string createTime = DateTime.UtcNow.AddDays(-1).ToString("O"); request.Filter = $"create_time >= \"{createTime}\" AND state:READY"; var recentReadyBackups = databaseAdminClient.ListBackups(request); PrintBackups(recentReadyBackups); // List backups in pages. foreach (var page in databaseAdminClient.ListBackups(parentAsInstanceName, pageSize: 5).AsRawResponses()) { PrintBackups(page); } return(allBackups); }