This is a Zabbix(4.0+) template and scripts to monitor jboss jvm stats. Data collected via wget http queries to a managment port(default 9990) of a jboss instance. A management user(zabbix) required to access management realm. Create management user with this command:
$JBOSS_HOME/bin/add-user.sh -s -u zabbix -p PASSWORD
In template change this macro values to support your needs:
{$DATA_DISCOVERER} /PATH/TO/jboss_jvm_discovery {$DATA_COLLECTOR} /PATH/TO/jboss_jvm_data {$MANAGMENT_PASS} PASSWORD {$MANAGMENT_USER} zabbix {$MANAGMENT_PORT} 9990
Collected items:
Application active sessions
Application sessions created
Class count loaded
Class count total loaded
Class count unloaded
Data source available count
Data source in use count
Data source max wait count
JVM Uptime
JVM VM-Name
JVM VM-Vendor
JVM VM-Version
Memory Heap committed
Memory Heap init
Memory Heap max
Memory Heap used
Memory Non heap committed
Memory Non heap init
Memory Non heap used
Thread count
Thread count daemon
Thread count peak
Thread count total started
Don't hold yourself, buy me a beer)
There are two discovery rules for garbage collectors(GC) and memory pools(MP). For each discovered GC this items will be created: collection-count and collection-time. And for MP: usage committed, usage init, usage max, usage used. Some graphs and triggers added.