Skip to content

Ericbla/check_jstat

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 

check_jstat

A Nagios plugin to get memory statistics of a Java application using jstat.

The process selection is done either by:

  • its pid (-p )
  • its service name (-s ) (assuming there is a /var/run/.pid file holding its pid)
  • its java name (-j ) where the java name depends on how the java application has been launched (main class or jar/war in case of java -jar) (see jps).
  • its java name or parameters (-J ) (see jps -v).

It then call jstat -gc and jstat -gccapacity to catch current and maximum heap and perm sizes. What is called heap here is the edden + old generation space, while perm represents the permanent generation space.

If specified (with -w and -c options) values can be checked with WARNING or CRITICAL thresholds (apply to both heap and perm regions).

This plugin also attach perfomance data to the output:

pid=<pid>
heap=<heap-size-used>;<heap-max-size>;<%ratio>;<warning-threshold-%ratio>;<critical-threshold-%ratio>
perm=<perm-size-used>;<perm-max-size>;<%ratio>;<warning-threshold-%ratio>;<critical-threshold-%ratio>

Usage:

check_jstat.sh -v
    Print version and exit"
check_jstat.sh -h
    Print this help nd exit
check_jstat.sh -p <pid> [-p <pid> [-p ...]] [-w <%ratio>] [-c <%ratio>] [-P <java-home>]
check_jstat.sh -s <service> [-w <%ratio>] [-c <%ratio>] [-P <java-home>]
check_jstat.sh -j <java-name> [-w <%ratio>] [-c <%ratio>] [-P <java-home>]
check_jstat.sh -J <java-name> [-w <%ratio>] [-c <%ratio>] [-P <java-home>]
    -p <pid>       the PID of process to monitor, might be multiple times entered
    -s <service>   the service name of process to monitor
    -j <java-name> the java app (see jps) process to monitor
                   if this name in blank (-j '') any java app is
                   looked for (as long there is only one)
    -J <java-name> same as -j but checks on 'jps -v' output
    -P <java-home> use this java installation path
    -w <%> the warning threshold ratio current/max in % (defaults to 90)
    -c <%> the critical threshold ratio current/max in % (defaults to 95)

Configuration:

This plugin may require to be run with sudo. In this case add a configuration in /etc/sudoers. For example if nagios is the user that run nagios (or NRPE deamon):

Defaults:nagios	!requiretty
nagios ALL=(root) NOPASSWD: /opt/nagios/libexec/check_jstat.sh

check_of

AnotherNagios plugin count the number of open files descriptors of a given process.

The process selection is done either by:

  • its pid (-p )
  • its service name (-s ) (assuming there is a /var/run/.pid file holding its pid)
  • its process name (-n ) (assuming that there is a single process that can be greped by its name using ps -e command).

Usage:

Usage: ./check_of.sh -v
    Print version and exit
Usage: ./check_of.sh -h
    Print this help nd exit
Usage: ./check_of.sh -p <pid> [-w <%ratio>] [-c <%ratio>]
Usage: ./check_of.sh -s <service> [-w <%ratio>] [-c <%ratio>]
Usage: ./check_of.sh -n <name> [-w <%ratio>] [-c <%ratio>]
    -p <pid>       the PID of process to monitor
    -s <service>   the service name of process to monitor
    -n <name>      the process name to monitor
    -w <%>         the warning threshold ratio current/max in %
    -c <%>         the critical threshold ratio current/max in %

About

A Nagios plugin to get memory statistics of a Java application using jstat

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages