Prior to Uptime Infrastructure Monitor 7.3, plugin monitors were downloaded from the Grid and installed in Uptime Infrastructure Monitor with either the Plugin Manager or the erdcloader command line tool.  In Uptime Infrastructure Monitor 7.3, the integrated Extension Manager easily acquires and installs Plugins from within the UI.  However, if the Uptime Infrastructure Monitor monitoring station does not have direct access to the Internet, the plugins will not be accessible for download.  In this scenario, simply create a local plugin repository for the Extension Manager to install from.

Overview

The Uptime Infrastructure Monitor 7.3 Extension Manager feature is accessed by the Want more? Search for monitors link in the top right corner of the Add Service Monitor window.  The Extension Manager content is populated from http://the-grid.uptimesoftware.com/extension.jsonWhen a plugin monitor is updated or a new one is added, the change is automatically reflected in the extension.json file (and the Extension Manager).

To enable the Extension Manager to access the plugin monitors without Internet access, place a copy of the plugin monitor files in a location that is accessible to the Uptime Infrastructure Monitor Monitoring Station, and create a local extension.json file where the plugin file paths point to the accessible location.

Create the extension.json File

To create the new extension.json file, simply refer to the existing Grid file at http://the-grid.uptimesoftware.com/extension.json.

If you need to upgrade a plugin monitor that is already installed, download the new plugin zip file and also copy the updated info from the extension.json file to update the entry in your local extension.json file.  You will not be able to upgrade the plugin unless the local extension.json file is also updated.

Because you will likely use only a small subset of the available plugin monitors, you can populate your local extension.json file with only the plugin monitors that you are interested in.  The following example includes the File and Directory plugin and the Enhanced Log Monitor plugin.

To create your local extension.json file, you will need to cover the following points:

  1. Add an open square bracket ([) character to top of the file and a closed square bracket (]) character to the bottom of the file.  The plugin entries should be listed between these characters.
  2.  In the public extension.json file, search for the plugin monitor(s) that you want to include in your local extension.json file.  Each plugin section is encompassed by curly brackets ({ and }).
  3.  When copying plugin entries from the public extension.json file to your internal copy, ensure that the very last plugin entry does not have a trailing comma character (,) after the closing curly bracket.  The comma is used to separate plugin entries in the extension.json file.
  4.  For each plugin entry in your local extension.json file, change the git_file_target field from the public location to http://uptimehost:9999/PluginRepo/plugin.zip.  If you have an alternate plugin zip file storage location that is accessible by the Uptime Infrastructure Monitor Monitoring Station, modify the link accordingly.
  5.  The icon_url field or grid_url_target fields should be left as is.

  This example local extension.json file only contains the File and Directory and Enhanced Log monitor plugins.  You may include as many or as few as you desire.

[
    {
        "category": "Operating System Monitors", 
        "supported_versions": [
            "7.3"
        ], 
        "name": "File and Directory", 
        "git_file_target": "https://github.com/uptimesoftware/file-directory-monitor/raw/develop/dist/file-directory-monitor.zip", 
        "icon_url": "http://the-grid.uptimesoftware.com/img/posts/placeholder-logo.png", 
        "upgrade_in_place": true, 
        "requires_additional_setup": false, 
        "requires_agent_scripts": true, 
        "version": "4.0", 
        "supported_platforms": [
            "windows", 
            "linux"
        ], 
        "grid_url_target": "http://the-grid.uptimesoftware.com/plugin/file-directory-monitor.html", 
        "type": "plugin", 
        "description": "Monitor the number of files, largest size, and how old the files are in a directory."
    }, 
    {
        "category": "Operating System Monitors", 
        "supported_versions": [
            "7.3"
        ], 
        "name": "Enhanced Log Monitor", 
        "git_file_target": "https://github.com/uptimesoftware/enhanced-logfile-monitor/raw/develop/dist/enhanced-logfile-monitor.zip", 
        "icon_url": "http://the-grid.uptimesoftware.com/img/posts/placeholder-logo.png", 
        "upgrade_in_place": true, 
        "requires_additional_setup": false, 
        "requires_agent_scripts": true, 
        "version": "3.0", 
        "supported_platforms": [
            "windows", 
            "linux"
        ], 
        "grid_url_target": "http://the-grid.uptimesoftware.com/plugin/enhanced-logfile-monitor.html", 
        "type": "plugin", 
        "description": "This monitor is designed for use with the Uptime monitoring station and Windows, Linux, Solaris or AIX agents. It scans for certain log files on the agent system and searches the files for a specified string (regex compatible). It will scan only new lines in files and not generate alerts for older issues. It keeps track of this by using a bookmark (in a temp file) so each time it runs it will simply go to the last position in the file and continue scanning. It is designed to scan large (multi-GB) as well as many files within a second."
    }
]

After creating your local extension.json file, place it in the <uptime_dir>\GUI directory (or another web location that the Uptime Infrastructure Monitor Monitoring Station server can access).  If using <uptime_dir>\GUI, be sure that no other files are modified; otherwise, the Uptime Infrastructure Monitor web UI may not work properly.  The web location of <uptime_dir>\GUI\extension.json will be http://uptimehost:9999/extension.json. 

Download Plugins

  1. Create the PluginRepo directory in <uptime_dir>\GUI on the Uptime Infrastructure Monitor Monitoring Station server, where the plugin zip files will reside (or in another web location that the Uptime Infrastructure Monitor Monitoring Station server can access).
  2. On a system that does have access to the internet (e.g. your desktop), for each plugin entry listed in your local extension.json file, browse to the grid_url_target address from the public extension.json file to download the plugin zip file
  3. Place these zip files in the <uptime_dir>\GUI\PluginRepo directory.  These zip files will now be accessible from http://uptimehost:9999/PluginRepo/plugin.zip, which should be the same address as the grid_url_target entry in your local extension.json file.

Update uptime.conf 

To have the Extension Manger use your local extension.json file, the following line needs to be added to the bottom of the <uptime_dir>\uptime.conf file and the up.time Data Collector service needs to be restarted (uptime_core on Linux):

extension.browsing.url=http://uptimehome:9999/extension.json

You should now be able to install Uptime Infrastructure Monitor plugins without the Monitoring Station  requiring direct access to the Internet (remember to occasionally check the Grid for plugin updates).

If you have configured the Uptime Infrastructure Monitor Web Server to use SSL (HTTPS), please contact Support for additional assistance.