Skip to content

JBossAS 7.1.1/ WildFly resource monitoring plugin for Nagios using HTTP-JSON based API written in Python

License

Notifications You must be signed in to change notification settings

sgargel/nagios-plugin-jbossas7

 
 

Repository files navigation

Nagios Plugin JBossAS7

This project provides a Nagios plugin for JBossAS 7.1.1 resource monitoring. The plugin uses HTTP-JSON based API (JBossAS REST Management API) to collect server statistics. The plugin currently supports JBoss standalone mode.

NagiosJBossAS7

Other plugins need additional SAR or WAR to be installed on the application server. Typically in Enterprise setups; it is sometimes not allowed to perform any additional installations on the target system. The main advantage of this plugin is it leverages the REST API of JBossAS. This allows us to monitor the application server without any additional configurations and installations.

Requirements:

  • Nagios

  • Python 2.7 onwards (with requests module used for digest authentication)

  • JBossAS 7.1.1-Final

Usage:

The check script supports following options. Details about monitoring different resources is available in respective sub-sections.

server:nagios-plugin-jbossas7 Aparna$ python check_jbossas7.py --help
Usage: check_jbossas7.py [options]

This Nagios plugin checks the health of JBossAS.

Options:
  -h, --help            show this help message and exit
  -H HOST, --host=HOST  The hostname you want to connect to
  -P PORT, --port=PORT  The port JBoss management console is runnung on
  -u USER, --user=USER  The username you want to login as
  -p PASSWD, --pass=PASSWD
                        The password you want to use for that user
  -W WARNING, --warning=WARNING
                        The warning threshold we want to set
  -C CRITICAL, --critical=CRITICAL
                        The critical threshold we want to set
  -A ACTION, --action=ACTION
                        The action you want to take
  -D, --perf-data       Enable output of Nagios performance data
  -m MEMORY_POOL, --memorypool=MEMORY_POOL
                        The memory pool type
  -q QUEUE_NAME, --queuename=QUEUE_NAME
                        The queue name for which you want to retrieve queue
                        depth
  -d DATASOURCE_NAME, --datasource=DATASOURCE_NAME
                        The datasource name for which you want to retrieve
                        statistics
  -s DS_STAT_TYPE, --poolstats=DS_STAT_TYPE
                        The datasource pool statistics type
  -t THREAD_STAT_TYPE, --threadstats=THREAD_STAT_TYPE
                        The threading statistics type

Currently the plugin supports monitoring of following resources and sub-systems.

Server Status

Checks JBossAS status

JVM Memory Utilization

Checks Heap, Non Heap, Old Gen, Eden Space, Perm Gen, and Code cache utilization

Garbage Collection

Checks garbage collection rate

HornetQ Messaging

Checks message queue depths

DataSource Pool Usage

Checks datasource pool utilization

Threading

Checks JVM process thread utilization

The project is licensed under the Apache License, Version 2.0

About

JBossAS 7.1.1/ WildFly resource monitoring plugin for Nagios using HTTP-JSON based API written in Python

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 100.0%