'internal used memory' alarm from jvm_monitor probe

book

Article ID: 4183

calendar_today

Updated On:

Products

DX Infrastructure Management NIMSOFT PROBES

Issue/Introduction

The jvm_monitor probe is  alarms similar to the following
The probe internal used memory 501760KB (196%) is >= 100.0% of 256000KB

Cause

By default the jvm_monitor probe has a max memory limit of 256000KB (256MB)
If the total memory used by the probe (Heap and Non Heap) exceeds this limit then the probe generates the above alarm and restarts

The jvm_monitor probe creates a child process for each jvm that you monitor but this child process by default does not have any heap space setting.
When a jvm is launched without any heap settings it is allowed to use 1/64 of system memory.

Therefore, if your server has 32GB RAM, then the child process is allowed to use up to 512MB.
This exceeds the internal memory usage limit in the probe, so it raises the alarm and restarts the probe.

Environment

jvm_monitor v1.46+

Resolution

You can configure the HEAP setting for the child jvm processes. This is documented here

In addition you can increase the Internal limit for the probe. To do so 

  1. Open the Raw Configuration interface of the probe.
  2. Navigate to the janitor section and select the memory limit key.
  3. Edit the key and enter the desired value.
    • eg to set the limit to 2GB define 2048000
You need to use a combination of heap settings and Janitor settings to control the max memory usage and alarms as per your requirements

Additional Information