check_weblogic_heap

Last update: March 11, 2019

This plugin will check the current memory usage of your Weblogic application. The plugin must run on the same host where your Weblogic installation is located.

End of life warning

EOL

As I don't have any Weblogic installations around to test further development, this plugin is end of life. Use as is.

Download

Download check_weblogic_heap.sh

check_weblogic_heap.sh

2980 downloads so far...

Download plugin and save it in your Nagios/Monitoring plugin folder (usually /usr/lib/nagios/plugins, depends on your distribution). Afterwards adjust the permissions (usually chmod 755).

Version history / Changelog

20110930 Created plugin
20111003 Catching connection/authentication problem

Requirements

The plugin requires Weblogic to be installed on the server on which the plugin should be executed. Before you start launching it on your Weblogic server, you must adjust the variable WL_HOME in the plugin. Set it so that it fits the root/home installation folder of your Weblogic installation:

# Define Variables
# a) Enter the root directory of your Weblogic installation e.g.:
# WL_HOME=/opt/weblogic/Oracle/Middleware/wlserver_10.3
WL_HOME=/opt/weblogic/Oracle/Middleware/wlserver_10.3

Another important and necessary information is the JAVA path. The java binary folder must be in the $PATH variable of your environment. If you know what $PATH means, you understand what there is to do. If not, please set the variable JAVA_HOME in the plugin to your java installation (the folder in which you will find the binary files 'java', 'javac', etc.):

# b) If Java installation is not yet in your $PATH, enter it here:
JAVA_HOME=/opt/jdk1.6.0_23/bin

Definition of the parameters

Parameter Description
-H* Hostname or ip address where Weblogic is running (usually localhost)
-P* Port on which weblogic listens
-u* Weblogic admin user
-p* Password for Weblogic admin user
-w Warning threshold in percent
-c Critical threshold in percent
--help Show help/usage

* mandatory parameter

Usage / running the plugin on the command line

Usage:

./check_weblogic_heap.sh -H HOST -P PORT -u username -p password [-w warning] [-c critical]

Example 1 without thresholds:

./check_weblogic_heap.sh -H localhost -P 7001 -u weblogic -p mypass

Example 2 with thresholds:

./check_weblogic_heap.sh -H localhost -P 7001 -u weblogic -p mypass -w 80 -c 90

As one can see, the -w and -c parameter (thresholds) are optional. If they're not given, the plugin will only return OK and output the current utilisation as information.

Command definition (NRPE)

As the plugin must be executed on the Weblogic server itself, I suggest to launch the plugin as nrpe command:

# 'check_weblogic_heap' command definition with thresholds
command[check_weblogic_heap]=/usr/lib/nagios/plugins/check_weblogic_heap -H localhost -P 7001 -u weblogic -p mypass -w 80 -c 90

# 'check_weblogic_heap' command definition just info output
command[check_weblogic_heap]=/usr/lib/nagios/plugins/check_weblogic_heap -H localhost -P 8001 -u weblogic -p mypass

Service definition

Service definition in Nagios, Icinga 1.x, Shinken, Naemon

# Check Weblogic Heap
define service{
use generic-service
host_name weblogic-server
service_description Weblogic Memory Heap
check_command check_nrpe!check_weblogic_heap
}

Service object definition Icinga 2.x

# Check Weblogic Heap
object Service "Weblogic Memory Heap" {
  import "generic-service"
  host_name = "weblogic-server"
  check_command = "nrpe"
  check_command = "nrpe"
  vars.nrpe_command = "check_weblogic_heap"
}

Screenshots

check_weblogic_heap OK
check_weblogic_heap connection critical