Configure Service Bus
- Log in to Digital Workspace Platform with Administrator credentials
- Click on the Launcher icon on the top right and select Administration
- Navigate to Integration -> Enterprise Service Bus
- Click Settings
- Select the Default Entry
Enterprise Service Bus Settings
- Click Edit in the preview
- Choose your Service Bus
- Enable "Is Enabled"
- Select your Service Bus Type (RabbitMQ or Azure Service Bus)
- Add your Subscription / Queue
- Enter your Topic / Exchange
- Enter your Connection String
- Press Save
- Press Done
- The entry will show "Connected" if the connection to the Subscription / Queue can be established. This might take a few minutes as the ESBAdapterActivation checks the configuration changes periodically.
For Azure Service Bus the "Connected" indicator is checked if the connection string is valid even if the Topic or Subscription are wrong. This would lead to not processed messages.
|Message Queuing System (Service Bus)||
||Here you can specify your message queuing system|
|Is Enabled||Enabled or Disabled||Here you can turn on/off service bus.|
|Subscription / Queue||e.g. matrix42.uux.subscription||Here you can specify your broker subscription name.|
|Topic / Exchange||e.g. matrix42.suem.topic||Here you can enter your client topic name.|
|Here you can enter your connection string for RabbitMQ or Azure Service Bus|
Device Import Settings
- Set state of device created in source system
- Defines the state when a device is initially created. Options are based on the Asset states. Active is the default value.
- Set state instead of deleting device when it is removed in source system.
- Enabled - the state is set to the defined state when a device is removed from a sub system. For Co-Managed devices the state is only changed when the device is removed from the last management system (Empirum and Silverback). This is the default value.
- Disabled - the device is removed from the system. As all devices in the platform share the same data it is also removed from Asset Management! For Co-Managed devices the device is only deleted when the device is removed from the last management system (Empirum and Silverback).
- Press Save
Special import behaviors
- The management type of devices is only set when creating a device. For existing devices the management type is not changed when updating the data.
- Depending on the configuration in ESB settings a device is either removed or its state is changed when a core system sends the "Detroy" message after removal from the core system. This will only remove/change the device state if the management type is set to either Empirum or Mobile Device Management.
The Nodes listing shows all systems which are connected to the same topic/exchange as the DWP and send correct consumable messages.
- Name: A name provided by the connected system (node)
- Version: Version information provided by the connected system
- Platform Identifier: Type of the connected system
- Last update: Time of the last received message (any correct message)
- Online: The ESB engine on the DWP checks every 10 minutes if the connected system answered within the last 10 minutes.
- Maintenance Mode: The maitenance mode can be manually set to exclude the node from the automated task generation.
- Description: Show optional information to identify the connected system or provides details which helps supporting it. The description can be edited by selecting "Edit" in the nodes list view.
- UUID: The unique ID of each connected system. This is used to link objects to the correct source system.
The online state relies on the system heartbeat replies to accurately display the nodes which are offline. Therefore only core systems which reply are correctly monitored. You can see if a core system already supports the heartbeat message replies when the Version information is filled.
The DWP sends every 5 minutes a broadcast message which all connected systems answer with their base information (once implemented). This allows the administrator to easily check if a connected system is not responding and therefore most likely offline.
Heartbeat messages are handled by remote actions, and the list of remote actions shows a "Node update heartbeat" entry with the status "Pending". If heartbeat messages are received with the sartus failed, check the HostCommon.log (see the Troubleshooting section below). To clean up the messages, it is possible to delete the "Node update heartbeat" remote action message and its contents. It will be re-created when new messages are processed.
Automated task generation if nodes are offline
If a node switches from online to offline a task is generated via a compliance rule. The task is assigned to the role "Service Desk Management". This can be changed by editing the compliance rule ""ESB Node not online". If a node is set to maintenance mode it is excluded and will not be considered in the compliance rule.
If a message is published from a core system to the topic and the DWP receiver retrieves the message it usually updates data based on the message body. If the data in the message body cannot be linked to an object because of a missing matching rule an error message is written to the HostCommon.log file. To get the HostCommon.log file choose the Administration App in the App chooser of the DWP and select "Download Server Logs" on the Home page. The error message can look like this example:
2021-07-22 09:15:49,894 ERROR 20 HostCommon (null) (null) (null) (null) 10.0.4.3189 - M42.BaseLogger;MessageReceiver.MessageExceptionHandler: Message Type: SPSAssetTypeNetworkDevice MQAdapterMatchingInfo doesn't contain entry for 'SPSAssetTypeNetworkDevice' at Matrix42.EnterpriseServiceBus.BizLogic.Services.MQGenericReceiver.MessageHandler(JsonMessage message) at Matrix42.ServiceBus.Subscriber.<>c__DisplayClass31_0`1.<<CreateReceiver>g__receiver|0>d.MoveNext()
The error indicates that the published message wants to update/create the object SPSAssetTypeNetworkDevice for which no Matching Rule is defined. Please refer to this Matching Rules for Service Bus Integration for additional information.