Skip to content

Commit 3ad11ca

Browse files
Move content to existing article
1 parent c3d5736 commit 3ad11ca

File tree

2 files changed

+17
-83
lines changed

2 files changed

+17
-83
lines changed

articles/storage/common/storage-srp-dotnet-retry.md

Lines changed: 0 additions & 82 deletions
This file was deleted.

articles/storage/common/storage-srp-manage-account-dotnet.md

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ description: Learn how to manage storage account resources with the Azure Storag
55
services: storage
66
author: pauljewellmsft
77
ms.author: pauljewell
8-
ms.date: 08/01/2024
8+
ms.date: 11/13/2024
99
ms.service: azure-blob-storage
1010
ms.topic: how-to
1111
ms.devlang: csharp
@@ -146,10 +146,26 @@ The following code example shows how to delete a storage account:
146146

147147
You can pass an [ArmClientOptions](/dotnet/api/azure.resourcemanager.armclientoptions) instance when creating an `ArmClient` object. This class allows you to configure values for diagnostics, environment, transport, and retry options for a client object.
148148

149+
### Example: Configure retry options
150+
149151
The following code example shows how to configure the `ArmClient` object to change the default retry policy:
150152

151153
:::code language="csharp" source="~/storage-mgmt-devguide-dotnet/StorageAccountManagement/Program.cs" id="Snippet_CreateArmClient":::
152154

155+
If you don't specify a custom retry policy, the default retry values are used. The following table lists the properties of the [RetryOptions](/dotnet/api/azure.core.retryoptions) class, along with the type, a brief description, and the default value:
156+
157+
| Property | Type | Description | Default value |
158+
| --- | --- | --- | --- |
159+
| [Delay](/dotnet/api/azure.core.retryoptions.delay) | [TimeSpan](/dotnet/api/system.timespan) | The delay between retry attempts for a fixed approach or the delay on which to base calculations for a backoff-based approach. If the service provides a Retry-After response header, the next retry is delayed by the duration specified by the header value. | 0.8 second |
160+
| [MaxDelay](/dotnet/api/azure.core.retryoptions.maxdelay) | [TimeSpan](/dotnet/api/system.timespan) | The maximum permissible delay between retry attempts when the service doesn't provide a Retry-After response header. If the service provides a Retry-After response header, the next retry is delayed by the duration specified by the header value. | 1 minute |
161+
| [MaxRetries](/dotnet/api/azure.core.retryoptions.maxretries) | int | The maximum number of retry attempts before giving up. | 3 |
162+
| [Mode](/dotnet/api/azure.core.retryoptions.mode) | [RetryMode](/dotnet/api/azure.core.retrymode) | The approach to use for calculating retry delays. | Exponential |
163+
| [NetworkTimeout](/dotnet/api/azure.core.retryoptions.networktimeout) | [TimeSpan](/dotnet/api/system.timespan) | The timeout applied to an individual network operation. | 100 seconds |
164+
165+
As you configure retry options for an `ArmClient` object, it's important to note that [scale targets](scalability-targets-resource-provider.md) are different between the Storage resource provider (management plane) and the data plane. Be sure to configure retry options with these limits in mind.
166+
167+
If you exceed the rate limit for Azure Storage management plane APIs, you receive an HTTP status code `429 Too Many Requests`, which indicates that the request is being throttled. The response includes a `Retry-After` value, which specifies the number of seconds your application should wait (or sleep) before sending the next request. If you send a request before the retry value elapses, your request isn't processed and a new `Retry-After` value is returned.
168+
153169
## Resources
154170

155171
To learn more about resource management using the Azure management library for .NET, see the following resources.

0 commit comments

Comments
 (0)