Hyades Data Collection Engine Configuration Readme

 

Contents

 

Introduction

The Hyades Data Collection Engine configuration is specified by two sets of configuration files. The first set is the base configuration which describes the default settings of the engine. The second set is the plugin configuration which describes the application-specific settings of the engine. This document describes the detail of each configuration and how to write configuration extensions.

 

The directory “<install directory>” referred in this document corresponds to the path where the Hyades Data Collection Engine is unpacked. This directory is also referred as “%RASERVER_HOME%” in the configuration files.

 

Base Configuration

The base configuration consist of the file “<install directory>/config/serviceconfig.xml” which is constructed using the XML schema <install directory>/config/serviceconfig.xsd”. This specifies the default settings such as system environment variables, application configurations and connectivity of the Hyades Data Collection Engine. The base configuration will be availabe to all configurations and is loaded when the engine service is started. Application developers should not modify this base configuration file since any changes in the base configuration will be global. Plugin configurations (described below) should be used to specify plugin and application specific settings.

 

Plugin Configuration

Each user-defined application should have its configuration file and dependencies being placed under the plugin directory “<install directory>/plugin/<plugin name>” where “<plugin name>” is a unique name which identifies the application. The plugin configuration file “pluginconfig.xml” should be placed under the “config” subdirectory of the plugin directory. Typically, JAR files are placed under the “lib” subdirectory of the plugin directory. Developers can use the XML schema “<install directory>/config/pluginconfig.xsd” to help constructing the plugin configuration file.

 

Elements and Attributes

Element: AgentControllerConfiguration

This is the root element of the base configuration. The settings are used for starting the engine service.

 

Used by: Base Configuration

 

Sub-elements: AgentControllerEnvironment, Application, Hosts, Service, Agent, Option, Plugin

 

Attributes:

 

Element: PluginConfiguration

This is the root element of the plugin configuration. The settings are loaded after the base configuration is loaded.

 

Used by: Plugin Configuration

 

Sub-elements: AgentControllerEnvironment, Application, Service, Agent, Option

 

Attributes:

 

Element: AgentControllerEnvironment

This is a place holder for global environment variable(s) contributed by this configuration. These are published to the system and available to all other configurations including the base configuration.

 

Used by: AgentControllerConfiguration, PluginConfiguration

 

Sub-elements: Variable

 

Attributes:

 

Element: Application

This is a place holder for application specific environment. The settings within are only visible to this particular application.

 

Used by: AgentControllerConfiguration, PluginConfiguration

 

Sub-elements: Variable, Parameter

 

Attributes:

 

Element: Hosts

This is a place holder for host information. This is used by the engine to allow / disallow certain host(s) to connect.

 

Used by: AgentControllerConfiguration

 

Sub-elements: Allow, Deny

 

Attributes:

 

Element: Allow

This specifys which host(s) are allowed to connect to the engine.

 

Used by: Hosts

 

Attributes:

 

Element: Deny

This specifys which host(s) are disallowed to connect to the engine.

 

Used by: Hosts

 

Attributes:

 

Element: Service

This specify which user defined module to load at engine startup.

 

Used by: AgentControllerConfiguration, PluginConfiguration

 

Sub-elements: Option

 

Attributes:

 

Element: Agent

This specify agent specific information.

 

Used by: AgentControllerConfiguration, PluginConfiguration

 

Sub-elements: Option

 

Attributes:

 

Element: Option

This is used to store a name-value pair.

 

Used by: AgentControllerConfiguration, PluginConfiguration, Service, Agent

 

Attributes:

 

Element: Plugin

This specify the directory to look for plugin configurations

 

Used by: AgentControllerConfiguration

 

Attributes:

 

Element: Variable

Environment variable.

 

Used by: Application, AgentControllerEnvironment

 

Attributes:

 

Element: Parameter

Program parameter.

 

Used by: Application

 

Attributes:

 

Known Issues

  1. Application cannot overwrite an already-loaded application with the same name and configuration. It can only extend the application by specifying the “extends” attributes in its configuraiton.
  2. Configurations are loaded alphabetically unless the configuration is dependent on other configurations, which in that case the dependent configurations will be loaded first. If any of the depencencies fails to load, the configuration will not be loaded at all.