NLog.Extensions.AzureQueueStorage
4.7.1
dotnet add package NLog.Extensions.AzureQueueStorage --version 4.7.1
NuGet\Install-Package NLog.Extensions.AzureQueueStorage -Version 4.7.1
<PackageReference Include="NLog.Extensions.AzureQueueStorage" Version="4.7.1" />
<PackageVersion Include="NLog.Extensions.AzureQueueStorage" Version="4.7.1" />
<PackageReference Include="NLog.Extensions.AzureQueueStorage" />
paket add NLog.Extensions.AzureQueueStorage --version 4.7.1
#r "nuget: NLog.Extensions.AzureQueueStorage, 4.7.1"
#:package NLog.Extensions.AzureQueueStorage@4.7.1
#addin nuget:?package=NLog.Extensions.AzureQueueStorage&version=4.7.1
#tool nuget:?package=NLog.Extensions.AzureQueueStorage&version=4.7.1
Azure QueueStorage
| Package Name | NuGet | Description |
|---|---|---|
| NLog.Extensions.AzureQueueStorage | Azure Queue Storage |
Queue Configuration
Syntax
<extensions>
<add assembly="NLog.Extensions.AzureQueueStorage" />
</extensions>
<targets>
<target xsi:type="AzureQueueStorage"
name="String"
layout="Layout"
connectionString="Layout"
queueName="Layout">
<metadata name="mymeta" layout="mymetavalue" />
</target>
</targets>
General Options
name - Name of the target.
layout - Queue Message Text to be rendered. Layout Required.
queueName - QueueName. Layout
connectionString - Azure Queue Storage connection string from your storage account. Required unless using serviceUri.
serviceUri - Alternative to ConnectionString, where Managed Identiy is acquired from DefaultAzureCredential.
timeToLiveSeconds - Default Time-To-Live (TTL) for Queue messages in seconds (Optional)
timeToLiveDays - Default Time-To-Live (TTL) for Queue messages in days (Optional)
Authentication Options
managedIdentityClientId - clientId for ManagedIdentityClientId on DefaultAzureCredentialOptions. Requires serviceUri
managedIdentityResourceId - resourceId for ManagedIdentityResourceId on DefaultAzureCredentialOptions, do not use together with ManagedIdentityClientId. Requires serviceUri.
tenantIdentity - tenantId for DefaultAzureCredentialOptions. Requires serviceUri.
sharedAccessSignature - Access signature for AzureSasCredential authentication. Requires serviceUri.
accountName - accountName for StorageSharedKeyCredential authentication. Requires serviceUri and accessKey.
accessKey - accountKey for StorageSharedKeyCredential authentication. Requires serviceUri and accountName.
clientAuthId - clientId for ClientSecretCredential OAuth2 authentication. Requires serviceUri, tenantIdentity and clientAuthSecret.
clientAuthSecret - clientSecret for ClientSecretCredential OAuth2 authentication. Requires serviceUri,tenantIdentity and clientAuthId.
When using ServiceUri (Instead of ConnectionString) with DefaultAzureCredential, then Azure Identity can also resolve from environment variables:
AZURE_CLIENT_ID- For ManagedIdentityClientId / WorkloadIdentityClientIdAZURE_TENANT_ID- For TenantId
See also: Set up Your Environment for Authentication
Proxy Options
noProxy - Bypasses any system proxy and proxy in ProxyAddress when set to true.
proxyAddress - Address of the proxy server to use (e.g. http://proxyserver:8080).
proxyLogin - Login to use for the proxy server. Requires proxyPassword.
proxyPassword - Password to use for the proxy server. Requires proxyLogin.
useDefaultCredentialsForProxy - Uses the default credentials (System.Net.CredentialCache.DefaultCredentials) for the proxy server. Take precedence over proxyLogin and proxyPassword when set to true.
Batching Policy
batchSize - Number of EventData items to send in a single batch (Default=100)
taskDelayMilliseconds - Artificial delay before sending to optimize for batching (Default=200 ms)
queueLimit - Number of pending LogEvents to have in memory queue, that are waiting to be sent (Default=10000)
overflowAction - Action to take when reaching limit of in memory queue (Default=Discard)
Retry Policy
taskTimeoutSeconds - How many seconds a Task is allowed to run before it is cancelled (Default 150 secs)
retryDelayMilliseconds - How many milliseconds to wait before next retry (Default 500ms, and will be doubled on each retry).
retryCount - How many attempts to retry the same Task, before it is aborted (Default 0)
Azure ConnectionString
NLog Layout makes it possible to retrieve settings from many locations.
Lookup ConnectionString from appsettings.json
connectionString="${configsetting:ConnectionStrings.AzureQueue}"
- Example appsettings.json on .NetCore:
{
"ConnectionStrings": {
"AzureQueue": "UseDevelopmentStorage=true;"
}
}
Lookup ConnectionString from app.config
connectionString="${appsetting:ConnectionStrings.AzureQueue}"
- Example app.config on .NetFramework:
<configuration>
<connectionStrings>
<add name="AzureQueue" connectionString="UseDevelopmentStorage=true;"/>
</connectionStrings>
</configuration>
Lookup ConnectionString from environment-variable
connectionString="${environment:AZURE_STORAGE_CONNECTION_STRING}"
Lookup ConnectionString from NLog GlobalDiagnosticsContext (GDC)
connectionString="${gdc:AzureQueueConnectionString}"
- Example code for setting GDC-value:
NLog.GlobalDiagnosticsContext.Set("AzureQueueConnectionString", "UseDevelopmentStorage=true;");
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
| .NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- Azure.Identity (>= 1.17.1)
- Azure.Storage.Queues (>= 12.24.0)
- NLog (>= 5.2.5)
-
net8.0
- Azure.Identity (>= 1.17.1)
- Azure.Storage.Queues (>= 12.24.0)
- NLog (>= 5.2.5)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 4.7.1 | 397 | 11/23/2025 |
| 4.7.0 | 318 | 11/13/2025 |
| 4.6.0 | 277 | 7/13/2025 |
| 4.5.0 | 230 | 6/30/2025 |
| 4.4.1 | 744 | 3/5/2025 |
| 4.4.0 | 3,682 | 6/24/2024 |
| 4.3.1 | 4,089 | 10/24/2023 |
| 4.3.0 | 1,004 | 9/15/2023 |
| 4.2.0 | 1,040 | 5/23/2023 |
| 4.1.0 | 4,681 | 2/9/2023 |
| 4.0.0 | 2,277 | 11/10/2022 |
| 3.3.0 | 1,010 | 10/5/2022 |
| 3.2.1 | 1,110 | 8/8/2022 |
| 3.2.0 | 3,256 | 3/28/2022 |
| 3.1.0 | 1,457 | 4/16/2021 |
| 3.0.0 | 1,464 | 10/31/2020 |
| 2.4.0 | 1,131 | 8/27/2020 |
| 2.3.0 | 1,203 | 4/6/2020 |
| 2.1.0 | 9,726 | 10/2/2019 |
| 2.0.0-preview | 1,104 | 9/9/2019 |
- Updated Azure.Identity to ver 1.17.1 (Security fix)
Docs: https://github.com/JDetmar/NLog.Extensions.AzureStorage/blob/master/src/NLog.Extensions.AzureQueueStorage/README.md