Installing NServiceBus Monitoring

Hide Topic ContentsShow Topic Contents
  1. What Do the NServiceBus Monitoring Tools Do?
  2. Installing NServiceBus Monitoring Tools
  3. Setup a Monitoring Instance
  4. Upgrading NServiceBus Monitoring Tools

What Do the NServiceBus Monitoring Tools Do?

The NServiceBus Monitoring Tools receive a copy of all messages sent via NServiceBus and allow the user to view the headers, saga's, xml data and message flow using ServiceInsight. The installer installs 3 applications:

ServiceInsight: Diagnostics tool showing messages and conversations. Uses ServiceControl to view all transmitted messages.

ServicePulse: A health monitor for the bus stops (production monitoring). It processes heartbeat messages from the bus stops and it allows the user to resend failed messages.

ServiceControl: Backend/service that provides information for ServiceInsight and ServicePulse. It's the central service that handles and processes the audit and error messages. The bus stops have a module/library that connects to the ServiceControl service.

Configuring NServiceBus

Monitoring Bus Stop Data

Installing NServiceBus Monitoring Tools

The ServiceControl and Monitoring instance can be installed on the same computer as where the bus stops are installed, but it is good practice to install them on a separate computer.

Extract the NServiceBus_Monitor_Node_xxx.zip file included with the ATS Bus installer package.

The path in which NServiceBus is unzipped cannot have any spaces. If it does the install.cmd will not run.

Read the _readme.txt file first when upgrading the monitoring tools. Additional steps are required before running the installation script.

Open the Windows PowerShell with administrative rights and execute the following command:

<location of extracted files>.\install.cmd

The script should be executed on a computer that is accessible by all ATS Bus computers before ATS Bus is installed.

The install.cmd script executes a PowerShell script that does the following:

Installs MSMQ if it is not already installed.

Installs the NServiceBus performance counters.

Installs the NServiceBus platform license.

Installs ServiceControl, ServicePulse and ServiceInsight.

Creates a ServiceControl instance named ‘Particular.ServiceControl’ if one does not exist. The instance is configured with the following values:

Transport = MSMQ

Audit retention = 30 days

Error retention = 15 days

Instance name = Particular.ServiceControl

ServicePort = 33333

Database maintenance port: 33334

If required, install.cmd could be modified before execution to setup a ServiceControl instance that uses different options.

The PowerShell script should not be modified.

The installer will then ask for a Database Maintenance Port.

Enter an available port number and click Enter.

The installer will then complete the installation.

If Service Control does not start carry out the steps shown in the troubleshooting section. 

Setup a Monitoring Instance

The ‘install.cmd’ script does not setup a monitoring instance, this should be done using the ServiceControl management application.

Run Service Control Management.

The following window opens.

It shows the configured ServiceControl instance.

Click +NEW and select Add monitoring instance.

In the new window enter the required information. The transport selected should be the same as the transport used by the bus stops and the ServiceControl instance. By default, MSMQ is used.

Click Add.

Upgrading NServiceBus Monitoring Tools

The install.cmd script from NServiceBus.Monitoring.Node.a.b.ccccc.d.zip will install a version of ServiceControl, ServiceInsight and ServicePulse suitable for the ATS Bus version that is installed. The same script will upgrade existing versions of the application when required.

The script does not upgrade the ServiceControl and Monitoring instances which should be upgraded using the ServiceControl Management application. Each instance will show a hyperlink stating ‘(Upgrade to Vx.yy.z)’. Clicking the hyperlink will start the upgrade of the instance.

Can we improve this topic?