No Hardware Data Collected due to WMI Memory Leak

What to do if the various WMI patches from BMC or Sentry do not seem to have cured the WMI Memory leak on your system.

Related Topics

Description

Monitored elements do not collect any hardware data due to a WMI Memory leak.

Symptoms

Monitored elements do not collect any hardware data.

Error message: "SentrySoftware-HardwareSentry-solution.com/bmc/patrol/patsdk/lib/wmi/WmiException:SentrySoftware-SEN_HW_MAIN ".
"java.lang.OutOfMemoryError: unable to create new native thread"

Solution

The memory leak error has not yet been fixed by a BMC patch. Our Performance Manager is not the only one affected by this problem.
Latest WMI libraries are already implemented in our Performance Managers, as well as all other WMI libraries used by BMC.
Thus, right now the only way to fix the WMI anomaly consists in using one of the following workaround solutions.

Option 1 - How to force PORTAL to use Sentry Software's WMI script

You are now going to force the RSM to use our WMI script.

  1. Edit the "rsmcfg.properties" file located in %RSM_HOME%\ RSMxx\server\rsm\conf\properties\rsm\ .
  2. Then set the below WMI Class property value to "true" to force BMC Performance Manager Express for Hardware to use Sentry Software's WMI script to perform WMI queries. 
  3. Open the "rsmcfg.properties" file and add the line below, if not present already:
    net.sentrysoftware.bpm.hardware.forceWMIScript=true
  4. Then restart the RSM.

Repeat the above procedure for each RSM.

Option 2 - How to force PORTAL to use Sentry Software's WMI Library

You are now going to force the RSM to use our WMI Library.

  1. Edit the "rsmcfg.properties" file located in %RSM_HOME%\ RSMxx\server\rsm\conf\properties\rsm\ .
  2. Then set the BMC WMI Library property value to "false" to force BMC Performance Manager Express for Hardware to use Sentry Software's WMI Library to perform WMI queries. 
  3. Open the "rsmcfg.properties" file and add the line below, if not present already:
    net.sentrysoftware.bpm.hardware.bmcWmiMethod=false
  4. Then restart the RSM.

Repeat the above procedure for each RSM.

Option 3 - How to switch from WMI to SNMP only mode

If using BMC Performance Manager Express for Hardware 2.6+:

  1. Copy the enclosed file (MS_HW_MIB2NT.hdf) to the following folder on each RSM: %RSM_HOME%\RSM26\thirdparty\lib
  2. Delete all the Old Instances files (to prevent the old network (WMI) cards from becoming missing): %RSM_HOME%\RSM26\SEN_HW\data\sen_hw_oldInstances*.dat
  3. Remove the WMI Credentials from the Element Profiles. 
  4. Delete all the elements database files: %RSM_HOME%\RSMxx\server\rsm\tmp\deploy\sen_hw_database_*.dat

This will reset all the elements. New elements can then be added again.

Note: If you are monitoring IBM servers, an upgrade BMC Performance Manager Express for Hardware 2.7+ is the only option to fix the issue.

If using BMC Performance Manager Express for Hardware 2.7+:

  1. Remove the WMI Credentials from the Element Profiles.
  2. Delete all the elements database files: %RSM_HOME%\RSMxx\server\rsm\tmp\deploy\sen_hw_database_*.dat

This will reset all the elements.  New elements can then be added again.