Skip to content
| Marketplace
Sign in
Visual Studio Code>Testing>Queue Studio for Service BusNew to Visual Studio Code? Get it now.
Queue Studio for Service Bus

Queue Studio for Service Bus

Factodus

| (0) | Free Trial
Service Bus queues, topics and dead-letter queues in the editor: cloud namespaces and the local emulator in one tree, peek without locks, search, move a whole DLQ back in one operation.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Queue Studio for Service Bus

Service Bus in the editor: cloud namespaces and the local emulator in one tree, peek of a whole queue without locks, search in bodies and properties, and a whole dead-letter queue moved back in one operation. Works with Azure Service Bus and the Service Bus emulator.

The peeked messages of the orders queue: a table of 24 messages and, below it, the formatted JSON body and the properties of the selected one

Free

  • Connections: a connection string (kept in VS Code's secret storage), a fully qualified namespace with Microsoft Entra ID (default Azure credential or Azure CLI), or the local emulator.
  • Tree: queues, topics and subscriptions with active, dead-letter and scheduled counts; every queue and subscription has its dead-letter queue.
  • Peek: walks the whole queue, subscription, dead-letter queue or one session by sequence number, in pages, up to a limit you set. Nothing is locked, so delivery counts and consumers are not affected. The table shows sequence number, message id, enqueue time, delivery count, subject, content type, size, session, state and application properties; the detail shows the body (JSON formatted and coloured) and every property.
  • Send: body, content type, subject, message and correlation id, application properties, session id, time to live and scheduled enqueue time. Resend fills the form from a selected message.
  • Entities: create and delete queues, topics and subscriptions; edit max delivery count, lock duration, time to live, dead-lettering on expiration and forwarding.

The dead-letter queue of orders with six messages; the detail pane shows the dead-letter reason PaymentDeclined and its description

Pro

A 14-day trial of everything starts with the first run. After it, Pro needs a license key.

  • Search the peeked messages by substring or regular expression, in bodies, application properties (name=value) or both.
  • Move a whole dead-letter queue back to its queue, or to its topic for a subscription, or to any queue or topic. Each batch is sent first and removed from the dead-letter queue only after the send succeeded, so a failure leaves the messages where they were. Progress is shown and the move can be cancelled.
  • Move or delete selected messages. To reach them, messages are received from the start with a lock and the others are released. On a main queue each released message counts one more delivery; the confirmation says so. Selected scheduled messages are cancelled.
  • Purge a queue, a subscription, a dead-letter queue or one session.
  • Export selected or shown messages to JSON or NDJSON, and send messages from such a file.

A search for HD-990 in the bodies and properties of the orders queue, showing 6 of 30 messages

Move All Back on the orders dead-letter queue asks where to send the messages, with the queue they came from first

Getting started

  1. Open Queue Studio: Service Bus in the activity bar and press +.
  2. Choose how to connect:
    • Connection string: a namespace-level one from Shared access policies. Entity-level strings with EntityPath cannot list the namespace.
    • Microsoft Entra ID: contoso.servicebus.windows.net and a credential. Reading needs Azure Service Bus Data Receiver, sending Data Sender, entity management Data Owner.
    • Local emulator: host, AMQP port (5672) and management port (5300) of the emulator container.
  3. The connection is tried before it is saved. Click a queue, subscription or dead-letter queue to peek it.

Session-enabled queues and subscriptions are peeked one session at a time (Peek Session…). Accepting a session locks it, so its consumer waits until the peek is done. Their dead-letter queues need no session.

Local emulator

Found while testing against mcr.microsoft.com/azure-messaging/servicebus-emulator 2.0:

  • The management API is plain HTTP on port 5300; the JavaScript administration client only speaks HTTPS, so Queue Studio switches the scheme for emulator connections.
  • Queue descriptions carry no count details and subscription counts are always zero. For the emulator, counts come from a peek walk; the active count of a session-enabled queue or subscription is shown as ?.
  • Updating an entity succeeds, but its answer cannot be parsed by the SDK; Queue Studio reads the settings back and reports any value that did not take effect.
  • A plain receiver on a session-enabled entity peeks nothing instead of failing, which is why Queue Studio asks for a session.
  • Limits of the emulator itself: one namespace, 50 entities, 256 KB messages, time to live of at most one hour, no Entra ID, nothing persists across a container restart.

Settings

Setting Default
queueStudioServiceBus.peek.limit 1000 Messages one peek walk reads at most
queueStudioServiceBus.peek.pageSize 100 Messages per peek request
queueStudioServiceBus.operations.batchSize 50 Messages a move, delete or purge takes at a time

Pricing, license, privacy, support

Pro costs $4 a month or $40 a year for individuals, and $8 a month or $80 a year per person for organizations, see pricing. License keys are sold through Polar as merchant of record, which handles payments, taxes, invoices and refunds, under the terms of sale and the refund policy.

Proprietary, under the end user license agreement. The extension sends the license key and the machine id to Polar to check the license and nothing to anyone else, see the privacy policy. Questions and bugs: support. The full user guide covers every feature.

Microsoft, Azure and Azure Service Bus are trademarks of the Microsoft group of companies. Queue Studio is an independent product and is not affiliated with or endorsed by Microsoft.

Development

npm test runs the unit tests; npm run test:integration starts the emulator and SQL Server in Docker with Testcontainers and runs the Service Bus tests against it, plus a smoke test of the commands inside VS Code (set QS_VSCODE_EXECUTABLE to an installed VS Code, otherwise @vscode/test-electron downloads one). npm run package builds the .vsix; it refuses to build without the production Polar organization id and purchase URL in licensing.config.json.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
  • Your Privacy Choices
  • Consumer Health Privacy
© 2026 Microsoft