Creating the app_manifest.xml file


The app_manifest.xml file tells the Agent which application modules to load and run. The app_manifest.xml file is located in the BDA directory in the following paths:

  • (Non-Windows systems): dagent/etc/custom/app_manifest.xml
  • (Windows systems): dagent\etc\custom\app_manifest.xml

The following example shows a basic app_manifest.xml file:

Example
<?xml version="1.0"?>
<manifest
 xmlns="com.gridapp.manifest.custom-code-1.0"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="com.gridapp.manifest.custom-code-1.0
                   custom-code-1.0.xsd"
>

 <applications>
   <!-- loading GA::Custom::GenericAppsConf allows Clarity to read -->
   <!-- the generic_apps.conf file found in Clarity's etc directory -->
   <application module="GA::Custom::GenericAppsConf" />
 </applications>

</manifest>

The first five lines and the last line of the app_manifest.xml file declare that the file is an XML file and define how to find the schema that it can be validated against. The <applications> tags are a container within which generic application modules are listed. Only the modules listed are loaded. The <application module=""/> tag tells BMC Database Automation to load the module specified and run it. For example, the basic app_manifest.xml file shown in the following figure tells the Agent to load and run the GenericAppsConf module, which in turn reads the generic_apps.conf file.

BMC Database Automation comes pre-packaged with the following custom modules that enable the dynamic discovery of common applications:

  • GA::Custom::MS_IIS: Discovers the existence of an IIS instance.
  • GA::Custom::MSSQLTools: Discovers the existence of SQL Server components. 

    Note

    This module is a partial example or sample reference, and it does not imply full BDA discovery or support of these components.

  • GA::Custom::GenericAppsConf: Reads the /app/clarity/dagent/etc/generic_apps.conf file and discovers the applications listed there.

To load and run these modules, modify the app_manifest.xml file as shown in the following example.

Example
<?xml version="1.0"?>
<manifest
 xmlns="com.gridapp.manifest.custom-code-1.0"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="com.gridapp.manifest.custom-code-1.0
                   custom-code-1.0.xsd"
>

 <applications>
   <application module="GA::Custom::MS_IIS">
     <os alias="windows" />
   </application>
   <application module="GA::Custom::MSSQLTools">
     <os alias="windows" />
   </application>
   <!--  loading GA::Custom::GenericAppsConf allows Clarity to read   -->
   <!--  the generic_apps.conf file found in Clarity's etc directory  -->
   <application module="GA::Custom::GenericAppsConf" />
 </applications>
</manifest>

The target OS is specified by using the <os> tag. The <os> tag restricts the loading an application module to Agents with a particular OS. The <os> tag can take one of the following parameters:

  • os type: Restricts the execution of a module to a particular version of an OS.
    For example, <os type="solaris9"> or <os type="win2003">.
  • os alias: Restricts the execution of a module to an OS class.
    For example, to restrict the module to either a UNIX or Windows OS is specified as follows: <os alias="unix"> or <os alias="windows">.
  • os full: Restricts the execution of a module to a specific OS by using the full name.

Valid values for the OS tag parameters are listed in the following table.

 

Tip: For faster searching, add an asterisk to the end of your partial query. Example: cert*