To install the custom checks plugin into an endpoint, reference the NServiceBus.CustomChecks NuGet package and add the following to the endpoint configuration:
var endpointConfiguration = new EndpointConfiguration("MyEndpoint"); endpointConfiguration.ReportCustomChecksTo( serviceControlQueue: "ServiceControl_Queue", timeToLive: TimeSpan.FromSeconds(10));
ServiceControl_Queueis a placeholder for the actual ServiceControl input queue. The ServiceControl input queue is equal to the ServiceControl service name as configured in the ServiceControl Management Utility.
It may not make sense to enable the custom checks plugin in all environments. For instance, a development environment may not have a running ServiceControl instance to consume custom check messages. In these cases, enable the plugin conditionally, based on an environment variable or configuration setting.
timeToLive (TTL) parameter is optional and defaults to four times the interval for periodic checks or infinite for one-time checks. Some queue systems (e.g. MSMQ) handle TTL proactively by removing timed out messages from the queues. Others do it only when a message is about to be received. Running the custom checks plugin without ServiceControl installed may cause the destination queue to grow indefinitely and consume system resources.