Skip to main content
Matrix42 Self-Service Help Center

Service Bus VII: Message Validation

Overview

Please refer first to your used Service Bus type to proceed:

Azure Service Bus

Service Bus Explorer

Download and Installation

Configuration

  • Open Service Bus Explorer
  • Click File
  • Select Connect 
  • Under Service Bus Namespaces select Enter a connection String 
  • In the connection string enter the namespace connection string 
    • In Azure, navigate to your Resource Group
    • Select your Service Bus Namespace
    • Navigate to Shared access policies
    • Press RootManageSharedAccessKey
    • Copy the Primary Connection String to your clipboard
  • Navigate back to Service Bus Explorer
    • Paste the Primary Connection String to the connection string section
    • Click OK

Read Messages

  • Expand Topics
  • Expand your synchronized Topic
  • Expand Subscriptions
  • You should see now 3 subscriptions
    • matrix42.empirum.subscription
    • matrix42.silverback.subscription
    • matrix42.uem.subscription
  • Verify if some subscriptions has a value greater then 0 in the brackets
  • Select the subscriptions with a greater value then 0 
  • Click Messages
  • Make sure "Peek" is selected
  • Enter as Message Count e.g. 100
  • Click OK
  • Read any of the messages

Troubleshooting

In order to analyze messages it might be useful to temporarily store all incoming messages in a "Wire Tap". Usually all subscribers will remove all messages almost immediately and therefore the messages cannot be reviewed. To store messages temporary it is possible to create a temporary subscription within the topic which receives all messages. This subscription has no subscriber and should be configured for automated message deletion.

In Service Bus Explorer (this is also possible in the Azure portal)

  • Expand Topics
  • Expand your synchronized Topic
  • Expand Subscriptions
  • Right click on Subscriptions
    • Select Create Subscription
    • Enter Name i.e. matrix42.troubleshooting.subscription
    • Select 1 Days in the "Default Message Time to Live" field (depends on the amount of messages - 10 minutes might also be sufficient for troubleshooting)
    • Select Create
  • New messages should now also received in the new subscription and can be viewed as described above
  • When done with troubleshooting it is safe to delete the temp.subscription

By starting the troubleshooting, it might make sense to purge the temporary subscription before invoking the task in one of the systems you want to inspect.

RabbitMQ

Configuration

  • Login to the administration interface of RabbitMQ (installed by default when using the Matrix42 installation package)

Read Messages

  • Select Queues
  • Select a queue which has more than 0 messages ready
  • Select Get messages
    • Enter the number of messages you want to receive
  • Review the messages
    • The message content can be copied to a json text formatter or a web service like https://jsonformatter.org for easier reading

Troubleshooting

In order to analyze messages it might be useful to temporarily store all incoming messages in a "Wire Tap". Usually all subscribers will remove all messages almost immediately and therefore the messages cannot be reviewed. To store messages temporary it is possible to create a temporary queue within the exchange which receives all messages. This queue has no subscriber and should be configured for automated message deletion.

In the administration interface of RabbitMQ

  • Select Queues
  • Expand "Add Queue" below the list of queues
  • Select the Virtual host used during installation
  • Enter a name i.e. matrix42.troubleshooting.subscription
  • Click in "Message TTL" in the list of optional arguments to add "x-message-ttl"
  • Enter the time how long messages should be stored in milliseconds i.e. 86400000 for 1 day
  • Press Add Queue
  • Select the new queue in the table
  • Expand Bindings
  • Enter the exchange name i.e. matrix42.suem.topic in the From exchange field
  • Click Bind
  • New messages should now also received in the new queue and can be viewed as described above
  • When done with troubleshooting it is safe to delete the matrix42.troubleshooting.subscription

By starting the troubleshooting, it might make sense to purge the temporary queue before invoking the task in one of the systems you want to inspect.

Next Steps

  • Was this article helpful?