Jmx Monitoring jvm

1. You need to use zabbix to monitor jvm, here, but it is found that many of the templates that come with you cannot be used, and many of the key metrics are not well understood, so I came to ask you about the syntax of jmxclient.

2, the following is a personal summary

jmxclient  jmxjmx



1jmxclientjvm


a,jmx

-sharp13080jmxcatalina.sh

java -jar cmdline-jmxclient-0.10.3.jar - 192.168.56.12:13080



b,jmx

java -jar jmxcmd.jar  - 127.0.0.1:13080|grep "java.lang" 

java -jar jmxcmd.jar  - 127.0.0.1:13080|grep "Catalina" 



:java -jar jmxcmd.jar  - 127.0.0.1:13080|grep "java.lang" 



: 
java.lang:type=Runtime
java.lang:name=MarkSweepCompact,type=GarbageCollector
java.lang:name=Compressed Class Space,type=MemoryPool
java.lang:type=Compilation
java.lang:type=ClassLoading
java.lang:name=CodeCacheManager,type=MemoryManager
java.lang:type=Memory
java.lang:name=Metaspace,type=MemoryPool
java.lang:name=Copy,type=GarbageCollector
java.lang:name=Eden Space,type=MemoryPool
java.lang:type=Threading
java.lang:name=Survivor Space,type=MemoryPool
java.lang:type=OperatingSystem
java.lang:name=Metaspace Manager,type=MemoryManager
java.lang:name=Code Cache,type=MemoryPool
java.lang:name=Tenured Gen,type=MemoryPool



:java -jar jmxcmd.jar  - 127.0.0.1:13080|grep "Catalina" 



:
Catalina:port=8009,type=Connector
Catalina:host=localhost,name=AccessLogValve,type=Valve
Catalina:name="http-nio-8080",type=GlobalRequestProcessor
Catalina:type=Mapper
Catalina:type=NamingResources
Catalina:host=localhost,name=StandardHostValve,type=Valve
Catalina:realmPath=/realm0/realm0,type=Realm
Catalina:type=Service
Catalina:context=/,host=localhost,name=Cache,type=WebResourceRoot
Catalina:name="ajp-nio-8009",type=GlobalRequestProcessor
Catalina:type=MBeanFactory
Catalina:J2EEApplication=none,J2EEServer=none,j2eeType=WebModule,name=//localhost/
Catalina:port=8080,type=ProtocolHandler
Catalina:name=StandardEngineValve,type=Valve
Catalina:port=8009,type=ProtocolHandler
Catalina:realmPath=/realm0,type=Realm
Catalina:host=localhost,type=Deployer
Catalina:class=org.apache.catalina.UserDatabase,name="UserDatabase",resourcetype=Global,type=Resource
Catalina:type=Server
Catalina:context=/,host=localhost,type=WebResourceRoot
Catalina:type=StringCache
Catalina:name="ajp-nio-8009",type=ThreadPool
Catalina:port=8080,type=Connector
Catalina:host=localhost,name=ErrorReportValve,type=Valve
Catalina:host=localhost,type=Host
Catalina:name="http-nio-8080",type=ThreadPool
Catalina:type=Engine

3, question
a, what is java.lang Catalina in java?

b, how do I know the specific usage of a parameter
for example:
you can see the parameter java.lang:name=Code Cache,type=MemoryPool above, you can use

here.

java-jar jmxcmd.jar-127.0.0.1 java.lang:name= 13080 "Code Cache", type=MemoryPool Usage

The command of

gets the value, and the value after execution of the command:
09 used: 13 de.layereight.jmxcmd.Client Usage: 20:24:06 + 0800 de.layereight.jmxcmd.Client Usage:
committed: 8650752
init: 2555904
max: 251658240
used: 8447296

but how do other parameters get specific values? Is it all Usage (tested, this is fine)?

Thank you, Daniel!

Jun.18,2021
Menu