Skip to content

cortside/amqptools

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

126 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Build status Quality Gate Status Coverage

amqptools

CLI tools for interacting with service bus queues.

NOTE: Requires .NET SDK 10.0 or greater

Install

dotnet tool install --global AmqpTools
dotnet tool install --global AmqpTools --version <version>

amqptools.json

{
  "environments": [
    {
      "name": "prod",
      "key": "secret=",
      "namespace": "acme-prod.servicebus.windows.net",
      "policyname": "SendListen"
    },
    {
      "name": "dev",
      "key": "secret=",
      "namespace": "acme-dev.servicebus.windows.net",
      "policyname": "SendListen"
    }
  ]
}

Commands

Will show available and required options

dotnet amqptools --help
dotnet amqptools <command> --help

delete

dotnet amqptools delete --config c:\path\to\amqptools.json --environment dev -q shoppingcart.queue --messageType deadletter --messageId ca097856-295c-49d4-a0c1-86e4806c17e7

peek

dotnet amqptools peek --config c:\path\to\amqptools.json --environment dev -q shoppingcart.queue --messageType deadletter --count 10

shovel

$policyname = "SendListen"
$namespace = "acme.servicebus.windows.net"
$key = "secret=="
$queue = "shoppingcart.queue"

dotnet amqptools shovel --queue $queue --namespace $namespace --policyname=$policyname --key=$key
dotnet amqptools shovel shovel --config c:\path\to\amqptools.json --environment dev -q shoppingcart.queue --max 10 --verbose

publish

$policyname = "SendListen"
$namespace = "acme.servicebus.windows.net"
$key = "secret=="
$queue = "shoppingcart.queue"
$event = "Acme.ShoppingCartUpdatedEvent"

dotnet amqptools publish --queue $queue --namespace $namespace --policyname=$policyname --key=$key --eventtype $event --data '{\"ShoppingCartResourceId\":\"e25d2090-d890-4b8a-a904-5feebf4b6436\"}'
dotnet amqptools publish --config c:\path\to\amqptools.json --environment dev -q shoppingcart.queue --eventtype "Acme.DomainEvent.Events.ShoppingCartCreationEvent" --data '{\"ShoppingCartResourceId\":\"e25d2090-d890-4b8a-a904-5feebf4b6436\"}'

OR

dotnet amqptools publish --queue $queue --namespace $namespace --policyname=$policyname --key=$key --eventtype $event --file "event.json"
dotnet amqptools publish --config c:\path\to\amqptools.json --environment dev -q shoppingcart.queue --eventtype "Acme.DomainEvent.Events.ShoppingCartCreationEvent" --file "event.json"

queue

$policyname = "SendListen"
$namespace = "acme.servicebus.windows.net"
$key = "secret=="
$queue = "shoppingcart.queue"

dotnet amqptools queue --queue $queue --namespace $namespace --policyname=$policyname --key=$key
dotnet amqptools queue --config c:\path\to\amqptools.json --environment dev -q shoppingcart.queue

Output:

{
  "Path": "onlineapplication.queue",
  "MessageCount": 6,
  "MessageCountDetails": {
    "ActiveMessageCount": 0,
    "DeadLetterMessageCount": 6,
    "ScheduledMessageCount": 0,
    "TransferMessageCount": 0,
    "TransferDeadLetterMessageCount": 0
  },
  "SizeInBytes": 807,
  "CreatedAt": "2023-02-15T21:27:27.202248",
  "UpdatedAt": "2024-08-09T04:02:57.2991904",
  "AccessedAt": "2025-03-26T02:14:33.6177786"
}

About

AMQP 1.0 message shovel

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors