The configuration of a Thinkserver Monitor is stored in a file located in the config folder ([Thinkserver Folder]/config/)

The name of the file has the following pattern <ConfigType><Monitor UUid> - <Monitor Name>.cfg where:

  • ConfigType is either MON (monitor) or DS(Datasource)
  • Uuid is a set of digits and letters representing a unique number
  • Monitor Name is the name set in the Thinkserver Configurator.


Contents of the File

The configuration file is an xml file with a Monitor node and a Script node

Monitor Node


 Monitor Name: Name of the monitor
 ID: Unique identifier of the monitor (Uuid)

 RID: Reference to the monitor Datasource Uuid.

 ClassID: code of the thinagent

 Description: Small description

 Activity: 0 if stopped, 1 if running

 MessagePersistent: true if this monitor uses persistence to disk, false otherwise

 Version: standard version of the monitor (generally 200)


  •  1: always generate a health event even if the monitor health hasn't changed
  •  2: only when the monitor health changes


  •  1: No
  •  2: Yes, to the Windows Event Log
  •  3: Yes, to the SmartConsole
  •  4: Yes, to both the Windows Event Log and the SmartConsole
  •  5: Use the Thinkserver Default for Automatic Monitor Health Change Message

 ImplementationVersion: Version of this particular implementation (generally 0)


The monitor node may contain specific configuration items like for example a filter list.

Script Node


 Description: Small description

 Enabled: True if this script is configured to run, False otherwise

 ExecuteIfError: True if we want the script to run even if there is an error in the data collection of the monitor or datasource


 HealthOnEachEvent: determines whether we set the health for each event or not.

  •  1: for each event
  •  2: after all the events (event group) to the most critical event
  •  3: after all the events (event group) to the least critical event


 Name: Name of the script





Typically a script node contains 5 levels of subnodes:



A Variable in uservars corresponds to an Additional Parameter 

Name: Name of the parameter

Type: Numeric or String

Encryption: "NONE" or the type of encryption (e.g. "LEVEL 1")

Value: value of the parameter, if it is encryped it will appear encrypted.



An expression either be:

  1. a condition for setting a specific health, and an action for that health: there are 8 types of expressions:

    CriticalCondition: for example MaxAvgTimePing > 200
    for example SendMessageToSmartConsole(...
    WarningCondition: ...
    WarningAction: ...
    MinorCondition: ...
    MinorAction: ...
    SuccessCondition: ...
    SuccessAction: ...

  2. The portion of python code configured in the Advanced Tab of the monitor

    PreEventActions: Python code specifying the actions to execute before each event 
    Python code specifying the actions to execute before each event
    Python code specifying the actions to execute before each event
    Python code specifying the actions to execute before each event






Variables To store



This section contains information about the Dashboards configuration for each type of data collection (event and group)

The Chart represents a type of data collection, either event or group:
  • Chart Attributes: 
    Enabled: whether the data recollection for this chart is enablesd
    Number: code of the chart EVENT(0) OR GROUP(1) <-- not sure, verify numbers  
    ContextInfo: The context info added to the chart
    ElementId: Element id represents an additional characteristic of this chart (for example, an owner)
    Category: The category of the chart
    RetentionPolicy: the type of the retention policy applied to this chart
    ConditionToStore: a boolean expression that must be true for any value to be stored (by default it is True)
    Name: ...
    Description: ...

For each chart we have a variable list (VariableList):
Each Variable is defined by the following

Variable Attributes:
Enabled: whether the automatic data recollection for this variable is enablesd (false if using custom storage)'
Name: ...
Description: ...
Metric: Metric of the variable (ms, kg,etc..)
ContextInfo: The context info added to the variable (inherits from its chart?)
whether this variable is time weighted
Whether the value is stored even if the collection or script fails
The default value of the chart in case the collection fails
Whether the value is summarized even if the collection or script fails
The default summarized value in case the collection fails
Whether Thinkserver executes summarization automatically

Still have questions? We can help. Submit a case to Technical Support.

Last Modified On: October 24, 2018