The GroundWork monitoring system is based on a set of individual monitors called plugins. These plugins complete such tasks as pinging a host, checking CPU or memory usage, and in the case of the SOC – collecting HTnM and HDvM information.

Configuring check_HDvM

Collection of capacity data is performed using the check_HDvM plugin. Start by placing the plugin check_HDvM.exe and required library python27.dll in the <install dir>\gdma\libexec. Open a command prompt and change to this directory.

C:\Windows\System32>cd "\Program files (x86)\groundwork\gdma\libexec"
C:\Program Files (x86)\groundwork\gdma\libexec>

Execute a First Run

Execute a First Run of the plugin. This process creates any necessary directories and configuration files. Next we will edit these files as required.

C:\Program Files (x86)\groundwork\gdma\libexec>check_HDvM.exe -f
First Run Executed

C:\Program Files (x86)\groundwork\gdma\libexec>

Edit C:\HDSSOC\check_HDvM.conf

Verify each of these items are valid for the environment, ensuring that the path to the HiCommandCLI.bat is accurate and is in the short (~) form of the path.

URL,[http://localhost:2001/service]

user,system

password,manager

HiCommand,C:\Progra~2\HiCommand\DeviceManager\HiCommandCLI\HiCommandCLI.bat

Test the Plugin

Here we can see that no pools are exceeding 90% utilization, so the check returns an OK status, then after the "|" we see performance information which is stored in the DB for pool provisioning an utilization reporting.

C:\Program Files (x86)\groundwork\gdma\libexec>check_HDvM.exe -s 53004 -t PoolUtil -w 90 -c 95

OK: 31 Pools | DPVols_0=327; PoolVols_0=4; Cap_0=3216.61; UsedCap_0=1595.63;
SubCap_0=8002.07; DPVols_1=8; PoolVols_1=15; Cap_1=495.30; UsedCap_1=26.39; SubCap_1=435.04;
DPVols_10=2; PoolVols_10=1; Cap_10=15.87; UsedCap_10=0.00; SubCap_10=10.09; DPVols_11=0;
PoolVols_11=4; Cap_11=32.86; UsedCap_11=0.00; SubCap_11=0.00; DPVols_12=2; PoolVols_12=3;
Cap_12=65.83; UsedCap_12=0.00; SubCap_12=10.09…

For a full list of checks and options, plugin help is available:

C:\Program Files (x86)\groundwork\gdma\libexec>check_HDvM.exe -h

Usage: check_HDvM.exe [options]

Options:

-h, --help            show this help message and exit

-s SERIAL, --Serial=SERIAL

                      Array Serial Number

-t CHECKTYPE, --CheckType=CHECKTYPE

                      Check type; can be: PoolUtil, PoolUtilGB,
                      PoolProvisioning, PoolCapacity

-e ELEMENT, --Element=ELEMENT

                      Element; e.g., Pool number

-w WARNING, --Warning=WARNING

                      Warning Level

-c CRITICAL, --Critical=CRITICAL

                      Critical Level

-f, --FirstRun        enter on first run to create conf files

-p, --UseProperties   use HiCommandCLI.properties file instead of .conf
                      entries

-v, --version         Displays the plugin version

Configuring check_HTnM

Collection of performance data in HTnM is actually collected using Performance Reporter agents. These agents have different names than the ones which are used in HTnM, so this correlation must be configured, along with some other factors.

Start by placing the plugin check_HTnM.exe and required library python27.dll in the <install dir>\gdma\libexec . Open a command prompt and change to this directory.

C:\Windows\System32>cd "\Program files (x86)\groundwork\gdma\libexec"
C:\Program Files (x86)\groundwork\gdma\libexec>

Execute a First Run

Execute a First Run of the plugin. This process creates any necessary directories and configuration files. Next we will edit these files as required.

C:\Program Files (x86)\groundwork\gdma\libexec>check_HTnM.exe -f
First Run Executed

C:\Program Files (x86)\groundwork\gdma\libexec>

Edit C:\HDSSOC\check_HTnM.conf

The 2 items in this file which require the most attention are:

  • The location of the jpcrpt.exe program
  • The DateFormat used by the server

Please ensure the jpcrpt.exe path is correct, and is using the short form of the path (spaces or special characters must be replaced by the ~ form of the path). The DateFormat is dependent on the localization settings of the server. For example:

  • North America - %m %d %Y %H:%M
  • Europe - %d %m %Y %H:%M
JPCRPT,C:\Progra~2\HiCommand\TuningManager\PerformanceReporter\tools\jpcrpt.exe

XMLDir,C:\HDSSOC\XML

SerialToAgent,C:\HDSSOC\SerialToAgent.csv

DateFormat,%m %d %Y %H:%M

Edit the C:\HDSSOC\SerialToAgent.csv

In order to have a consistent array identifier across HTnM, Performance Reporter and HDvM, we need to associate the array serial number to the Performance Reporter agent name. This is done in the SerialToAgent.csv file. This file is created with the following example record:

SerialNumber,AgentID

12345,DA1USPV12345[agent_server]

This file will need to be modified to include all arrays which are to be monitored, and their appropriate agent names as retrieved from Performance Reporter.

Test the Plugin

C:\Program Files (x86)\groundwork\gdma\libexec>check_HTnM.exe -s 85043739 -t LDEV -l -w 0 -c 1

CRITICAL: 0 - 0ms (HSD:v001i00,v001i00,v001i00,v001i00 Ports:CTL0-A,CTL0-B,CTL1-A,CTL1-B),
1 - 0ms (HSD:v001i00,v001i00,v001i00,v001i00 Ports:CTL0-A,CTL0-B,CTL1-A,CTL1-B),  2 - 0ms
(HSD:v001i00,v001i00,v001i00,v001i00 Ports:CTL0-A,CTL0-B,CTL1-A,CTL1-B),  5 - 0ms
(HSD:v001i00,v001i00,v001i00,v001i00 Ports:CTL0-A,CTL0-B,CTL1-A,CTL1-B),  6 - 1ms
(HSD:v001i00,v001i00,v001i00,v001i00 Ports:CTL0-A,CTL0-B,CTL1-A,CTL1-B),

For the purposes of this example, the thresholds were set very low (warning: 0ms and critical: 1ms). The output lists the LDEVs which exceeded the threshold, and since we specified the -l (LDEV Extended) option, we received information on the Labels (this array has none), HSDs and Ports which these LDEVs are assigned to.

For a full list of checks and options, plugin help is available:

C:\Program Files (x86)\groundwork\gdma\libexec>check_HTnM.exe -h

Usage: check_HTnM.exe [options]

Options:

-h, --help            show this help message and exit

-s SERIAL, --Serial=SERIAL

                      Array Serial Number

-t CHECKTYPE, --CheckType=CHECKTYPE

                      Check type; can be: PortXfer, PortIOPS, Proc, CLPR,

                      AG, LDEV, PoolPerf, PoolIOPS, LDEV_RResp, LDEV_WResp,

                      LDEVIOPS, PoolWResp, PoolRResp

-w WARNING, --Warning=WARNING

                      Warning Level

-c CRITICAL, --Critical=CRITICAL

                      Critical Level

Extended Options:

These options are not required.

-e ELEMENT, --Element=ELEMENT

                      Element; e.g., CHA-1E - should be able to apply REGEX

-p POOL, --Pool=POOL

                      Pool; e.g., ^1* - should be able to apply REGEX

-f, --FirstRun        enter on first run to create conf files

-l, --LDEVExtended    use this option to collect extended LDEV info on

                      exception

-u, --UseProperties

                      use HiCommandCLI.properties file instead of .conf

                      entries

-v, --version         Displays the plugin version