Variables

Variables provide a way for the administrator to help configure tools, data collections, and monitors in a more generic way that can be altered at runtime depending on where something is executed.

Defining Variable

Variables can be configured in the following places and follow this order of precedence. A variable set at the global level can be overridden at a lower level with a more specific value.

Place Description
Global Variables Global variables are available to all agents and servers anywhere within the framework. They are replicated between regions.
Region Variables Region variables are available to all agents and servers within a single region.
Company Variables Company variables are available to all agents assigned to a company.
Server Variables Server variables are available to all agents assigned to a server and to the server itself.
Computer Variables Computer variables are available on a single agent.
Monitor Variables Monitor variables are added to an event message created by monitoring.
Element Variables Element variables are added to an event message created by monitoring and are restricted to a specific element type.

Where they can be used

Variables can be used in many places as macros. The administrator can use a variable by providing a macro such as ${NAME} or ${THIS_IS_A_VARIABLE}.

Here are some examples.

  • In definitions for data collector items. When specifying WMI or registry information, and key properties.
  • In definitions for advanced monitors. In the monitor specific type tab such as DNS, LDAP, Database, SMTP, etc. All variables available on the agent are also added to event messages that are created by the agent.
  • In application tools. They can be used in parameter strings, are available in environment variables, and available to plugins and scripts.
  • In conditions used by monitoring and target rules. For example, you could configure a monitor to trigger when free space on C: is less than ${C_FREE_SPACE} and then define the variable C_FREE_SPACE on the computer in the CMDB. This would provide an easy way to customize thresholds instead of overriding the actual monitor. You could also set C_FREE_SPACE at the global, region, server or company level to use as a default if the computer does not have a value set.