Getting Started
Architecture
NServiceBus
Transports
Persistence
ServiceInsight
ServicePulse
ServiceControl
Monitoring
Samples

Monitoring Instance Configuration Settings

Component: ServiceControl

The configuration of a ServiceControl Monitoring instance is controlled by the ServiceControl.Monitoring.exe.config file or by setting environment variables. When a setting configuration exists as both an environment variables and in the application configuration file, the environment variable setting takes precedence.

Deployments using the ServiceControl Management utility (SCMU) can use that application to make a subset of configuration settings which are read from and written to the application configuration file.

Locating the configuration file using SCMU

image

Host Settings

Prior to modifying these configuration settings review Setting a Custom Hostname:

Monitoring/InstanceName

Added in version 5.5.0

The name to be used by the monitoring instance and the name of the monitoring queue.

ContextName
Environment variableMONITORING_INSTANCENAME
App config keyMonitoring/InstanceName
SCMU fieldInstance/Queue Name
TypeDefault value
stringParticular.Monitoring

Monitoring/HttpHostname

The hostname to bind the embedded HTTP server to, modify to bind to a specific hostname, eg. monitoring.mydomain.com.

Not applicable to container deployments. Containers bind to any hostname.

ContextName
Environment variableMONITORING_HTTPHOSTNAME
App config keyMonitoring/HttpHostname
SCMU fieldHost Name
TypeDefault value
stringlocalhost

Monitoring/HttpPort

The port to bind the embedded HTTP server.

Not applicable to container deployments. Containers always expose port 33633.

ContextName
Environment variableMONITORING_HTTPPORT
App config keyMonitoring/HttpPort
SCMU fieldPort Number
TypeDefault value
int33633

Logging

Monitoring/LogPath

The path for the Monitoring instance logs.

Not applicable to container deployments. Containers always log to stdout.

ContextName
Environment variableMONITORING_LOGPATH
App config keyMonitoring/LogPath
SCMU fieldN/A
TypeDefault value
stringThe folder that contains the Monitoring instance executable.

Monitoring/LogLevel

Controls the LogLevel of the Monitoring instance logs.

ContextName
Environment variableMONITORING_LOGLEVEL
App config keyMonitoring/LogLevel
SCMU fieldN/A
TypeDefault value
stringWarn

Valid settings are: Trace, Debug, Info, Warn, Error, Fatal, Off.

This setting will default to Warn if an invalid value is assigned.

Transport

Monitoring/TransportType

The transport type to run ServiceControl Monitor with.

ContextName
Environment variableMONITORING_TRANSPORTTYPE
App config keyMonitoring/TransportType
SCMU fieldTransport
TypeDefault value
stringNone

Valid values are documented in the ServiceControl transport configuration documentation.

NServiceBus/Transport

The connection string for the transport.

ContextName
Environment variableNSERVICEBUS_TRANSPORT
App config keyNServiceBus/Transport in connectionStrings
SCMU fieldConnection String
TypeDefault value
stringNone

Valid values are documented in the ServiceControl transport configuration documentation.

Monitoring/ErrorQueue

The error queue name.

ContextName
Environment variableMONITORING_ERRORQUEUE
App config keyMonitoring/ErrorQueue
SCMU fieldError Queue Name
TypeDefault value
stringerror

Monitoring/MaximumConcurrencyLevel

The maximum concurrency that will be used for ingesting metric messages.

ContextName
Environment variableMONITORING_MAXIMUMCONCURRENCYLEVEL
App config keyMonitoring/MaximumConcurrencyLevel
SCMU fieldN/A
TypeDefault value
int32

Monitoring/EndpointUptimeGracePeriod

The time after which the endpoint is considered stale if it stops sending messages.

ContextName
Environment variableMONITORING_ENDPOINTUPTIMEGRACEPERIOD
App config keyMonitoring/EndpointUptimeGracePeriod
SCMU fieldN/A
TypeDefault value
TimeSpan00:00:40 (40 seconds)

Usage Reporting

Monitoring/ServiceControlThroughputDataQueue

Added in version 5.4.0

The queue on which throughput data is received by ServiceControl error instance. This setting must match the equivalent LicensingComponent/ServiceControlThroughputDataQueue setting on the ServiceControl error instance.

In most instances these settings do not need to be modified.

If running multiple setups of the Platform Tools (i.e. multiple versions of ServiceControl Error and monitoring instances) then modify these settings so that the queue on each Monitoring instance is matched to the queue of its error instance.

If using MSMQ transport and the monitoring instance is installed on a different machine to the ServiceControl error instance, then only the monitoring instance setting needs to be modified to include the machine name of the error instance in the queue address.

If using PostgreSQL transport, and a schema other than public is required, then the schema name needs to be included in the Monitoring/ServiceControlThroughputDataQueue setting

ContextName
Environment variableMONITORING_SERVICECONTROLTHROUGHPUTDATAQUEUE
App config keyMonitoring/ServiceControlThroughputDataQueue
TypeDefault value
stringServiceControl.ThroughputData