Class JmxRrdMigratorOffline

  • All Implemented Interfaces:
    OnmsUpgrade

    public class JmxRrdMigratorOffline
    extends AbstractOnmsUpgrade
    The Class RRD/JRB Migrator for JMX Collector.

    The fix for the following issues is going to break existing collected data specially for JRBs. For this reason, these files must be updated too.

    Issues fixed:

    • NMS-1539
    • NMS-3485
    • NMS-4592
    • NMS-4612
    • NMS-5247
    • NMS-5279
    • NMS-5824
    • NMS-8507
    Author:
    Alejandro Galue
    • Field Detail

      • badMetrics

        protected java.util.List<java.lang.String> badMetrics
        The list of bad metrics.
      • backupFiles

        protected java.util.List<java.io.File> backupFiles
        Backup files.
    • Method Detail

      • getOrder

        public int getOrder()
        Description copied from interface: OnmsUpgrade
        Gets the order.

        In order to execute all the implementations of this interface on a specify order, each implementation must return an integer for this purpose.

        Returns:
        the order
      • getDescription

        public java.lang.String getDescription()
        Description copied from interface: OnmsUpgrade
        Gets the description.

        This is for informational purposes, and should contain a brief description about what is the purpose of this upgrade class.

        Returns:
        the description
      • requiresOnmsRunning

        public boolean requiresOnmsRunning()
        Description copied from interface: OnmsUpgrade
        Requires OpenNMS running.
        Returns:
        true, if OpenNMS must be running to execute this upgrade or false if OpenNMS must be stopped.
      • preExecute

        public void preExecute()
                        throws OnmsUpgradeException
        Description copied from interface: OnmsUpgrade
        Pre-execute

        Runs some checks to ensure that what it would execute() would work. If something is missing, an exception will be thrown

        Execute backups of the JRBs/RRDs if they are going to be modified.

        Throws:
        OnmsUpgradeException - the OpenNMS upgrade exception
      • postExecute

        public void postExecute()
                         throws OnmsUpgradeException
        Description copied from interface: OnmsUpgrade
        Post execute.

        Runs some clean up tasks after executing the execute() method. If something is wrong, an exception will be thrown

        Throws:
        OnmsUpgradeException - the OpenNMS upgrade exception
      • rollback

        public void rollback()
                      throws OnmsUpgradeException
        Description copied from interface: OnmsUpgrade
        Rollback.

        Restore the initial state of the OpenNMS files if something went wrong while running the execute() method.

        Must restore the backups of the files if necessary.

        Throws:
        OnmsUpgradeException - the onms upgrade exception
      • execute

        public void execute()
                     throws OnmsUpgradeException
        Description copied from interface: OnmsUpgrade
        Execute.

        This is the main method, and this is the one where all the upgrade code must be placed.

        Throws:
        OnmsUpgradeException - the OpenNMS upgrade exception
      • getFixedDsName

        protected java.lang.String getFixedDsName​(java.lang.String dsName)
        Gets the fixed DS name.
        Parameters:
        dsName - the DS name
        Returns:
        the fixed DS name
      • getFixedFileName

        protected java.lang.String getFixedFileName​(java.lang.String oldFile)
        Gets the fixed file name.
        Parameters:
        oldFile - the old file
        Returns:
        the fixed file name