🎉 First release HZN Queue Console 1.0 is out. Get 30% off with code FIRSTRELEASE30— limited number of customersSee pricing →
Changelog

Changelog

1.x (Current)

1.0.4

Fixed:

  • Searching a queue with many messages could take the broker down. A search asked the broker for the whole queue in one go; on RabbitMQ it now reads the queue over AMQP and on ActiveMQ Artemis page by page — neither the broker nor the console ever holds the whole queue any more. Results appear while the search runs instead of all at once at the end
  • Search is much faster on a broker reached over a network, where it was slow enough to be unusable — a queue of 500 messages took twenty seconds and 10 000 took minutes. The console asked the broker for one message at a time, so the time it took was the network round trip multiplied by the number of messages; it now reads them in a continuous stream. Measured at a 24 ms round trip: 500 messages in 0.6 s instead of 20 s, and 10 000 in 23 s instead of six minutes
  • Searches no longer pile up. Typing in the filter box used to leave several full reads running against the broker at once, because closing a search only stopped the console from listening; a search is now superseded by the next one, and stopping it stops the read
  • On a deep queue the filter box waits for Enter rather than searching on every pause in typing
  • A search or a message action that was interrupted could destroy messages on a RabbitMQ quorum queue with a delivery limit — the messages it had read were returned by the connection closing, which counts against that limit, instead of being handed back explicitly, which does not
  • A search that was cut short by its own limits now says so, instead of looking like a queue with fewer messages in it
  • Dead-letter details (x-death) and other nested header values are searchable and readable in Spy Mode, rather than showing as unreadable objects

1.0.2

New:

  • Binary content on queues is handled as what it is: an image, a PDF or any other non-text payload is carried as bytes rather than mangled into text, shown as an attachment with a preview, and can be downloaded whole (on ActiveMQ Classic this needs the server’s OpenWire port, which Test Connection now checks along with the management API)

Fixed:

  • A licence could be reported invalid in a rare situation where it was perfectly valid — moving it between machines more than twice in a day answered “Invalid license key” instead of saying when the next move is possible

1.0.1

New:

  • Stream view — read a queue one message after another with the payload laid out as formatted JSON, instead of a row per message. Switches from the toolbar, and uses the same filters and the same fields as the table
  • Dark mode, following the system by default or set explicitly
  • Application settings, behind the gear beside the About control: theme and interface zoom, separate from the per-server settings in the navigation
  • Interface zoom, 70–125% in steps of 5, remembered per install (desktop app; in a browser the browser’s own zoom applies)
  • Filter on any column rather than only the payload — the field selector now lists the message’s own fields, every payload field including nested paths, and the headers
  • Nested payload values as columns: a value inside an object, or inside the objects in an array, can be a column of its own — items.productName

Improved:

  • Columns are sized to what they hold rather than to an estimate, and dragging a column edge follows the pointer exactly. The row-number column resizes too, and a click on a separator hands a column back to its content width
  • The row’s action buttons stay in view when the table is scrolled sideways
  • Column headers carry their full name in a tooltip instead of bleeding into the next column
  • The payload column shows {…} with the payload, formatted and syntax-coloured, in the tooltip. Whatever matches the filter is marked — in the cell and in the tooltip alike
  • A third click on a column header clears its sort, back to the order the messages arrived in
  • Returning to a queue list, or any page, puts you back where you had scrolled to
  • The column picker opens on Payload, and says how many columns are showing of how many the queue has
  • The queue list is held and refreshed in the background, so it is there when the page opens
  • Servers are grouped in the export picker
  • Leave a queue with Escape, the control in the left gutter, or the trackpad back gesture
  • Server connections can be validated and their AMQP port tested, and settings moved between machines
  • Every dialog has a close control in its corner

Fixed:

  • An empty AMQP port turned Spy Mode off rather than assuming 5672
  • A column hidden in the picker could still take up space in the table

1.0.0

Initial public release.

Broker support:

  • RabbitMQ 3.11+
  • ActiveMQ Classic 5.16+
  • ActiveMQ Artemis 2.28+

Features:

  • Queue browser with message inspection and pagination
  • Message filtering by header, routing key, payload, and properties
  • Message routing between queues
  • Dead-letter queue rescue with automatic x-death header cleanup
  • AsyncAPI schema validation in the message detail panel and publish dialog
  • AsyncAPI spec editor: visual editor and YAML source, two-way synced (beta)
  • Traffic recording across every queue and topic on a server, with one-click channel generation from the captured samples (beta)
  • Spec version history with diffs, selectable active version, and PDF documentation export
  • Table view with customisable column presets
  • Multi-server support with environment tags
  • Queue monitoring (message count, consumer count, memory, publish/delivery rates)
  • Message publishing with schema-assisted compose
  • Export to JSON and CSV
  • Credentials stored in OS keychain (macOS, Windows, Linux)
  • macOS, Windows, and Linux desktop builds
  • In-app notification when a new version is available

New releases are listed on this page — check back here to see what’s changed. The app also tells you when a new version is out; see Updating the App.