STM JVM Heap SAM Monitor

Version 2

    A while back I set out to monitor the Storage Manager JVM heap sizes (settings from -Xmx and -Xms options) in Orion to be alerted when the agents and server services (especially when the agent serves as proxy to monitor multiple SANs and VCenters) might run out of heap space, as I cannot see this in STM.

     

    To do this you can follow these instructions:

    1. Turn on the JVM snmp agent for the STM agent or server service needing to monitoring (the server service I applied this to was the SolarWinds.Storage.Collector service, so I have attached a sample of this file). Do this by adding the following to the params section (making sure to adjust the number of parameters and any following parameters in the file and to put these before the -classpath parameter) to the service INI file located C:\Program Files\SolarWinds\Storage Manager Server\webapps\ROOT\bin on the server and C:\Program Files\Solarwinds\Storage Manager Agent on the agent.
      param12=-Dcom.sun.management.snmp.port=20161
      param13=-Dcom.sun.management.snmp.interface=0.0.0.0
      param14=-Dcom.sun.management.snmp.acl=false
    2. Next I had to create an SNMP Monitor APM template and apply it to each STM agent (sample attached).
      The oids to monitor are (bolded are most important, to this thread):
      JVM Memory Heap Min Size - 1.3.6.1.4.1.42.2.145.3.163.1.1.2.10.0
      JVM Memory Heap Used - 1.3.6.1.4.1.42.2.145.3.163.1.1.2.11.0
      JVM Memory Heap Committed - 1.3.6.1.4.1.42.2.145.3.163.1.1.2.12.0
      JVM Memory Heap Max Size - 1.3.6.1.4.1.42.2.145.3.163.1.1.2.13.0
      JVM Memory Non-Heap Used - 1.3.6.1.4.1.42.2.145.3.163.1.1.2.21.0
      JVM Memory Non-Heap Committed - 1.3.6.1.4.1.42.2.145.3.163.1.1.2.22.0
      JVM Memory Non-Heap Max - 1.3.6.1.4.1.42.2.145.3.163.1.1.2.23.0
      JVM Memory Thread Count - 1.3.6.1.4.1.42.2.145.3.163.1.1.3.1.0
    3. Lastly, create a vb script to be ran on a windows task to update the SAM threshold for the JVM Memory Heap Used component created (sample attached, be sure to change the database information to your database). I decided to run it on a schedule because I am lazy... when I had to adjust the JVM heap size, the script would automatically update the threshold without me having to log in to SAM and update it.

     

    This has provided useful to me and I thought I might share with the community. ENJOY!