AzureServiceBusDLQ 1.0.0

There is a newer version of this package available.
See the version list below for details.
dotnet tool install --global AzureServiceBusDLQ --version 1.0.0
                    
This package contains a .NET tool you can call from the shell/command line.
dotnet new tool-manifest
                    
if you are setting up this repo
dotnet tool install --local AzureServiceBusDLQ --version 1.0.0
                    
This package contains a .NET tool you can call from the shell/command line.
#tool dotnet:?package=AzureServiceBusDLQ&version=1.0.0
                    
nuke :add-package AzureServiceBusDLQ --version 1.0.0
                    

AzureServiceBusDLQ

Installing

dotnet tool install AzureServiceBusDLQ --global --prerelease

Connecting

Listen claims is required.

Connecting to the azure service bus namespace can be done in two ways:

  • Using a connection string: -c {my connection string}
  • Using a namespace name: -n {my namespace}
    • In this mode DefaultAzureCredentials will be used to authenticate

Listing queues with DLQ/TDLQ messages

In this example using the namespace name:

asb-dlq queues -n my-asb-namespace

Outputs:

  • All queues with at least one DLQ or TDLQ message.

Returns:

  • 0 if no queues contains DLQ/TDLQ messages
  • 1 if at least one queue have DLQ/TDLQ messages

Show DLQ/TDLQ messages for a specific queue

In this example using the namespace name:

asb-dlq queue my-queue -n my-asb-namespace

Outputs:

  • Details of all DLQ and TDLQ messages for the specified queue.

  • Returns:

  • 0 if no DLQ/TDLQ messages exists

  • 1 if at least one DLQ/TDLQ message exists

Retry DLQ messages for a specific queue

Retries DLQ messages by moving them back to the parent queue.

Transactions are used to ensure that retries are atomic.

In this example using the namespace name:

asb-dlq retry-queue my-queue -n my-asb-namespace

Outputs:

  • Message details for retried messages.

  • Returns:

  • 0 if messages where retried successfully or if no DLQ messages where found.

  • 1 if DLQ messages failed to be retried

Move DLQ messages

Moves DLQ messages to the target queue

Transactions are used to ensure that the move is atomic.

Move single queue with default transformation (see below):

asb-dlq move-dlq-messages my-source-queue my-target-queue -n my-asb-namespace

Use NServiceBus transformation:

asb-dlq move-dlq-messages my-source-queue my-target-queue --transform nservicebus -n my-asb-namespace

Outputs:

  • Message details for moved messages.

  • Returns:

  • 0 if messages where moved successfully or if no DLQ messages where found.

  • 1 if DLQ messages failed to be moved

Transforms

The move operation will capture metadata about the DLQ message via transformations. The following transformations are available.

Default

Adds the following application properties to the moved message:

  • x-asb-dlq-source-queue: Queue name where the message was dead lettered
  • x-asb-dlq-reason: Dead letter reason
  • x-asb-dlq-description: Dead letter description
NServiceBus

Adds the following application properties to the moved message:

  • NServiceBus.FailedQ: Queue name where the message was dead lettered
  • NServiceBus.ExceptionInfo.ExceptionType: Dead letter reason
  • NServiceBus.ExceptionInfo.Message: Dead letter description
None

No modifications are done to the moved message.

Product Compatible and additional computed target framework versions.
.NET 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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

Version Downloads Last Updated
1.0.3 166 12/13/2025
1.0.2 218 4/22/2025
1.0.1 128 4/19/2025
1.0.0 140 4/19/2025
1.0.0-alpha.4 78 4/12/2025
1.0.0-alpha.3 161 4/10/2025
1.0.0-alpha.1 158 4/8/2025
1.0.0-alpha.0.4 151 4/8/2025
1.0.0-alpha.0.3 158 4/8/2025