CMR Configuration

This document presents a basic CMR configuration guide for the versions 1.5 and above

All the properties of the Central Management Repository (CMR) that can be changed are defined in default CMR configuration file. This XML-based file can be found in the CMR/config folder and is named default.xml.

Do not alter the default configuration file

 Users are advised not to alter the default configuration file. Changing of property values must be done via the User interface. Read Updating the property value section for further information.

 

Default configuration file

The XML structure of the file is specially designed in the way that configuration is split in several sections, where each section can have one or more properties. Here is the simple example of the section that defines the JDBC properties:

JDBC section in configuration file
	<section name="JDBC">
		<properties>
			<string-property name="URL" default-value="jdbc:h2:db/inspectit;LOCK_MODE=0;CACHE_SIZE=131072;DB_CLOSE_ON_EXIT=FALSE" server-restart-required="true" logical-name="database.url"
				advanced="true" description="The JDBC URL pointing to the database.">
				<validators>
					<isNotEmpty />
				</validators>
			</string-property>
			<string-property name="Driver" default-value="org.h2.Driver" server-restart-required="true" logical-name="database.driver" advanced="true" description="The driver class to be used. ">
				<validators>
					<isFullyQualifiedClassName />
				</validators>
			</string-property>
			<string-property name="Username" default-value="inspectit" server-restart-required="true" logical-name="database.user" advanced="true" description="The username used to connect to the database.">
				<validators>
					<isNotEmpty />
				</validators>
			</string-property>
			<string-property name="Password" default-value="inspectit" server-restart-required="true" logical-name="database.password" advanced="true" description="The password used to connect to the database.">
				<validators>
					<isNotEmpty />
				</validators>
			</string-property>
		</properties>
	</section>

As it can be seen each property defines several attributes that are specified within XML:

Property attributes
AttributeDescription
nameUser-readable name of the property.
descriptionUser-readable description of the property.
default-valueDefault value of the property.
logical-nameLogical name that will be used internally by the CMR.
server-restart-requiredDefines if changing of the property requires the server restart.
advancedDefines if property is advanced, thus should be changed only the expert users.

In addition there are currently 5 types of properties, each defining what kind of value it is holding:

Available properties types
TypeValue TypeExample of value specification
boolean-propertybooleantrue or false (ex. default-value="true")
long-propertylongparse-able long (ex. default-value="100")
string-propertyStringany string (ex. default-value="inspectit")
percentage-propertyfloatnumber between 0 and 100 (ex. default-value="50")
byte-propertylong

specially defined bytes count consisted out of number and unit (ex. default-value="200MB")

unit can be specified as B, KB, MB, GB, TB, etc

Each property has set of defined validators that prove that value specified by the property is correct in terms of inspectIT usage. For example, the thread count property can not be negative. Furthermore, specific properties are grouped in the so-called group-property, where validators can create restrictions on the values between two or more properties. For example, the following specifies that max buffer pool capacity can not be less than min pool capacity.

Group validation example
<group-validators>
	<isLess property="storage.bufferPoolMinCapacity" than="storage.bufferPoolMaxCapacity" />
</group-validators>

Updating the property value 

The easiest and fastest way to change a property value is to open the  Configure Repository dialog from the Repository Manager View. This dialog presents all available properties organized in sections as in the default configuration file. Detailed description of the property can be read by hovering the  information icon, while the  warning icon denotes that the changing of property value requires the CMR to be restarted.

After clicking on the OK button, if any of properties that require CMR restart were altered, the user will be prompted if the CMR should be automatically restarted so that the changes are applied. If No is selected, note that changed values on properties that require server restart will active from the next restart/start-up.

Showing advanced properties

By default all expert-user level properties as not shown in the  Configure Repository dialog. If you wish to see all available properties, including the advanced ones, then check the Show advanced properties option. The advanced properties will clearly be separated for the normal ones. We again suggest that you do not alter the advanced properties if you are not on a expert-user level.

Restoring to default values

The  Configure Repository dialog also offers Restore Defaults button which restores all the properties in the displayed section to default values.