title: Check memory usage of Java application server via JMX and j4p.war agents: linux author: Mathias Kettner <mk@mathias-kettner.de> license: GPL distribution: check_mk description: This checks uses the JSON HTTP service of j4p (from jmx4perl) to monitor the current memory usage of a Java application server like Tomcat or JBoss. You can define levels against the total memory usage of the Java machine (heap + non heap). In order for the check to work, you need to load the j4p.war into your application server. Furthermore you need the agent plugin {j4p_performance} in your Check_MK agent's plugins directory. If you do not use the default port 8080 for j4p - lets say {9090} - then you have to create a configuration file {j4p.conf} in the agents configuration directory (usually {/etc/check_mk/j4p.conf}) with the single line {port = 9090}. Note: No jmx4perl is needed - neither on the target host nor on the monitoring server. No Perl is needed, either. The agent connects to the application server always via {localhost}. item: The instance name as configured in {j4p.conf} with the variable {instance}. If you do not specify an instance then the port number converted to a string is used. Please note that the current implementation of the agent plugin supports only one instance per host. examples: # Set default levels for heap memory to 500 MB / 800 MB j4p_performance_mem_default_levels = (500, 800) perfdata: Two variables: the heap memory usage and the non heap memory usage in MB. inventory: One check is created for each JMX instance sent by the agent. The agent currently supports only one instance, but that might be changed in future. [parameters] warning (int): The warning level for used memory in MB critical (int): The critical level for used memory in MB [configuration] j4p_performance_mem_default_levels (int, int): Default levels for memory usage in MB. This is preset to {(1000, 2000)}.