Node customizations

The following describes conventions and examples of customizations to the Platform Analytics node:

Supported files

Customizations to the following built-in configuration files (all in the conf directory) will remain in the upgraded or patched Analytics node:

  • datasource.xml

  • log4j.properties

  • plc.xml

  • perf.conf

  • All *.properties files in the dataloader subdirectory.

  • All *.xml files in the plc subdirectory.

  • wsm_plc.conf files in the wsm subdirectory.

Customizations to other Platform Analytics files might not remain in an upgrade or patched Platform Analytics node. Therefore, in order to meet Platform Analytics node conventions, customizations to the Platform Analytics node cannot overwrite any Platform Analytics files not in this supported list.

Customize an existing data loader

If you customize an existing data loader, do not directly overwrite the built-in binaries. Instead, you can edit the source code, make file, or build.xml file to build binaries with different names by following the naming conventions.

The following describes an example to customize the lsfpendingreasonloader to obtain more information for detailed pending reasons:

  1. Edit the necessary source code to change or add the necessary required information.

    For example, edit the pendreason.c file.

  2. Edit the make file to build the final .so file with a different name (such as appending the serial number).

    For example, edit the make file to build the final file named libpendreason_148781.so.

  3. Change the package name to a different name (such as appending the serial number).

    For example, for all files in the com.platform.perf.dataloader.lsf.advanced.pendreason package, change the package name to com.platform.perf.dataloader.lsf.advanced.pendreason_148781.

  4. Change the Java code to load the new shared library.

    For example, in the com.platform.perf.dataloader.lsf.advanced.pendreason_148781.ReadPendReasonJNI.java file, change the System.loadLibrary line to the following:

    System.loadLibrary("pendreason_148781");

  5. Edit the build.xml file to build the final .jar file with a different name.

    For example, edit the build.xml file to build the pendreason_148781.jar file.

  6. Copy the existing data loader configuration to a file that follows the customization file naming convention.

    For example, copy the existing data loader configuration to pendingreason_148781.xml.

  7. Edit the new data loader configuration file with the desired attributes.
    1. Change the Class attribute of the Reader element to the new class that you specified as the package name.

      For example, change the Class attribute from com.platform.perf.dataloader.lsf.advanced.pendreason to com.platform.perf.dataloader.lsf.advanced.pendreason_148781.

    2. To add more columns that you want the data loader to collect, edit the SQL section.
  8. Edit the loader controller configuration file to point to the new data loader configuration file.

For example, the relevant directories and files are as follows:

ANALYTICS_TOP
  • conf

  • dataloader/pendingreason_148781.xml

    The data loader configuration file.

  • plc/plc_lsf_advanced.xml

    The loader controller configuration file related to the pending reason data loader. This file may be modified for the new data loader.

  • lsf/7.0

    Library files collecting Platform LSF 7.0 data.

    Similarly, the ego directory contains library files collecting EGO-related data, and the license directory contains library files collecting license-related data.

  • dataloader/pendingreason_148781.xml

    The data loader configuration file.

  • platform/lib/libpendreason_148781.so

    The shared library file is here.

Add a new custom data loader

Add a new data loader to collect custom data from the cluster.

  1. Add the loader controller configuration file for the new data loader to the ANALYTICS_TOP/conf/plc directory.

    Create a new loader controller configuration file by copying the plc.xml file and editing the copied file for your new data loader. It is recommended that you create at least one standalone loader controller configuration file for your custom data loaders.

  2. Add the new data loader configuration file to the ANALYTICS_TOP/conf/dataloader directory.
  3. Add the library files to the corresponding lib directories.

For example, to create the License Scheduler workload data loader with serial number 148782, add the following files to the following relevant directories:

ANALYTICS_TOP
  • conf

  • dataloader/ls_workload_148782.xml

    The data loader configuration file.

  • dataloader/ls_workload_148782.properties

    The data loader property file.

  • plc/plc_ls_workload_148782.xml

    A standalone loader controller configuration file for the new data loader.

  • license/7.0

    Library files collecting Platform LSF License Scheduler 7.0 data.

    Similarly, the ego directory contains library files collecting EGO-related data, and the lsf directory contains library files collecting LSF-related data.

  • lib/ls_workload_148782.jar

  • platform/lib/liblsworkload_148782.so

    The shared library file is here.