Probe Configuration Files Reference

Probe Configuration Files Reference
This article describes the files to review and modify when you want to build a customized probe.
The probe_schema.xml file is required for any metric group or topology probe. This file defines the element types and their associated QoS metric types. The element types model the probe inventory that the probe publishes as the discovered topology. The metric types define the QoS data that can be published for the element type.
The probe_schema.xml file contains a section to define an element, CI type, and metric types. See the MetricTypesWithUnits.SpreadSheetOfMostCommonTypesForReuse file in the docs directory in probe-sdk-<version>.zip for the recommended CI types for various metrics. If your custom monitor type in your probe_schema.cfg file uses metrics from various CI types, pick the metric that best fits your monitor type.
Element Types
This section of the file defines the element types and element properties. Each element type contains the associated metric types.
 Element type names can only contain alphabetic characters and underscores; special characters and numbers are not allowed.
Example element type section:
<probe-schema> <element-types> <element-type name="RESOURCE"> <qos-metric-types> <qos-metric-type name="ResourceResponseTime"> <description>Duration time in milli-seconds of last resource collection cycle.</description> <label>ResourceResponseTime</label> <metric-type>1.10:14</metric-type> <qos-name>QOS_RESOURCE_RESPONSE_TIME</qos-name> <unit>MilliSeconds</unit> </qos-metric-type> </qos-metric-types> </element-type> <element-type name="ExecutableImage"> <base-element-type>SoftwareElement</base-element-type> <icon>probe</icon> <properties/> <qos-metric-types> <qos-metric-type name="InstanceCount"> <active>yes</active> <description>Number of running instances of this image</description> <label>InstanceCount</label> <metric-type>1.3:2</metric-type> <qos-name>QOS_PROCESS_MONITOR_INSTANCE_COUNT</qos-name> <unit>count</unit> <conversions/> </qos-metric-type>
QoS Metric Types
These elements contain the metric definitions. The valid attributes are:
  • active: Indicates if the section is processed as a metric. Enter yes to process the section as a metric, and enter no to avoid processing the section as a metric.
  • unit: The units for the metric. These units are defined in in CI manager and are automatically added to the file if you use a standard CI type ID.
  • description: Descriptive information for the metric.
  • label: The display name for the metric.
  • metric-type: The numeric string that represents a CI type and the associated MI type.
  • qos-name: The QoS metric name.
 The name of any custom QoS metrics you add must be in the format: QOS_<APPLICATION/PROBE_NAME>_<UNIQUE_IDENTIFIER>. The entire metric name is capitalized with no spaces by convention. For example, QOS_CLOUD1_MONITORNAME. It is also a good practice to append the abbreviated units.
The following is an example of a QoS measurement in the StorageDirectory element:
<element-type name="StorageFile"> <base-element-type>FileElement</base-element-type> <icon>memory</icon> <properties/> <qos-metric-types> <qos-metric-type name="SizeInKB"> <active>yes</active> <description>Size of the file in kilo-bytes</description> <label>SizeInKB</label> <metric-type>1.10:19</metric-type> <qos-name>QOS_STORAGE_FILE_SIZE_KB</qos-name> <unit>KB</unit> <conversions/> </qos-metric-type> </qos-metric-types> </element-type>
The <probe>.cfx file defines any default setup and startup information, resources, and alarm messages for the probe. This file also functions as a template for the <probe>.cfg file that the Probe-SDK automatically generates. The following sections describe the contents that are typically found in the file.
This section of the file contains the general parameters for the probe. These parameters include:
  • Loglevel: The amount of information that is generated by the running probe. The default level for a probe is 3.
  • Logsize: The maximum size of the log file in KBs.
<setup> loglevel = 1 logsize = 3000 </setup>
This section of the file contains startup options for Xms memory settings and the default probe language.
<startup> options = -Xms32m -Xmx512m -Duser.language=en </startup>
All possible messages are available in the <
>.cfx file by default. Many of the default messages might not make sense for your probe. It might be necessary to view this file and remove the messages you do not want to use with the probe.
There is typically one section for each message which includes the following properties:
  • Name: A descriptive name for the message.
  • Token: A classification for filtering lists of alarms.
  • Message text strings: The text strings for the alarm message and the clear alarm message.
  • Level: The alarm severity
  • Subsystem ID: The NAS subsystem identification number sequence, separated by dots, identifying the subsystem. Use this ID to categorize the alarms sent along with the alarm message from the probe. You can look up the available subsystem IDs through the nas probe interface. For more information, see the nas wiki article.
For example, the subsystem ID 2.7.1 is a subsystem ID for a VMware resource.
  • 2. = The group for software vendors
  • 2.7. = VMware
  • 2.7.1 = Resource
<messages> <ResourceCritical> name = ResourceCritical token = resource_error msn_err = $host is not responding (reason: $descr) msn_ok = $host is now responding sev = 5 subsystem = 2.7.1 </ResourceCritical> </messages>
The <
>.pkg file defines the package information of the <probe>.zip file. This file points to the GUI executables, auto-generated localization files, and required files for the probe. You can deploy files generically across platforms, and you can deploy specific files on specific platforms. This section describes the contents of the <
>.pkg file.
package Info
This section of the file contains general information about the probe package.
<package info> name = cloud1 description = Basic Devkit Probe copyright = Copyright 2015, CA. All rights reserved. group = Application author = MyCompany version = 1.00 build = 01 </package info>
This section of the file contains information about packages that are required to run before probe deployment. Do not change the information in this section.
<pre_install> update = cloud1 post-install = $NIM_JRE_HOME/bin/java -jar probes/custom/cloud1/pre_install/packageCleaner.jar probes/custom/cloud1/pre_install/pre_install.xml <files> <packageCleaner.jar> type = binary access = 0644 dir = probes/custom/cloud1/pre_install </packageCleaner.jar> <pre_install.xml> type = text access = 0644 dir = probes/custom/cloud1/pre_install </pre_install.xml> </files> </pre_install>
This section of the file defines the deployment of the <probe>.cfx, <probe>.cfg, and <probe>.jar files. The deployment definition includes:
  • Platform dependencies
    To deploy specific files on a specific platform you must add a section to the <probe>.pkg file for each platform. You must define the platform-specific files and dependencies within each platform section.
  • Default directory and log file locations
  • Required library files
The following example shows the generic section where the cloud1.cfx, probe_schema.cfg, and cloud1.jar files are deployed on any platform.
<generic> name = cloud1 type = cloud1 update = cloud1 <cloud1> description = Cloud1 Probe group = Application active = yes preserve_state = yes type = daemon timespec = workdir = probes/custom/cloud1 command = <startup java> arguments = -jar cloud1.jar config = cloud1.cfg logfile = cloud1.log datafile = security = write </cloud1> <files> <cloud1.jar> type = binary access = 0644 dir = probes/custom/cloud1/lib </cloud1.jar> <cloud1.cfx> type = config access = 0644 dir = probes/custom/cloud1 </cloud1.cfx> <probedef.cfg> type = config access = 0644 dir = probes/custom/cloud1 </probe_schema.cfg> </files> </generic>
The following example shows the generic section where the Linux-specific section within a <probe>.pkg file. The cloud1.jar, cloud1.cfg, and cloud1.log files are installed only on a Linux platform with a robot version of 4.10 and a Java jre version of 1.6.0.
<LINUX> name = cloud1 OStype = unix OS = LINUX update = cloud1 <cloud1> description = Cloud1 Probe group = Custom active = yes preserve_state = yes type = daemon timespec = workdir = probes/custom/cloud1 command = <startup java> arguments = -jar cloud1.jar config = cloud1.cfg logfile = cloud1.log datafile = security = write </cloud1> <dependencies> <Robot> version = 5.23 type = ge </Robot> <java_jre> version = 1.6.0 type = ge </java_jre> </dependencies> <files> </files> </LINUX>
 For a list of supported platforms, see the CA UIM Compatibility Matrix.
The standard Maven project file. Maven is used to compile and package the probe.