Created
November 14, 2012 16:22
-
-
Save koduki/4073092 to your computer and use it in GitHub Desktop.
GlassFish JMX monitaring with JRuby.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
require 'jmx4r' | |
url = 'service:jmx:rmi://localhost.localdomain:8686/jndi/rmi://localhost.localdomain:8686/jmxrmi' | |
con = JMX::MBean.establish_connection :url => url | |
thread = JMX::MBean.find_by_name "java.lang:type=Threading" | |
thread.peak_thread_count | |
thread.thread_count | |
os = JMX::MBean.find_by_name "java.lang:type=OperatingSystem" | |
os.name | |
os.version | |
os.arch | |
os.available_processors | |
os.system_load_average | |
os.system_cpu_load | |
os.process_cpu_load | |
os.total_physical_memory_size | |
os.free_physical_memory_size | |
os.committed_virtual_memory_size | |
os.total_swap_space_size | |
os.free_swap_space_size | |
os.max_file_descriptor_count | |
os.open_file_descriptor_count | |
runtime = JMX::MBean.find_by_name "java.lang:type=Runtime" | |
runtime.vm_name | |
runtime.spec_version | |
runtime.vm_version | |
runtime.boot_class_path | |
runtime.class_path | |
runtime.library_path | |
class_loading = JMX::MBean.find_by_name "java.lang:type=ClassLoading" | |
class_loading.total_loaded_class_count | |
class_loading.loaded_class_count | |
class_loading.unloaded_class_count | |
ps_mark_sweep = JMX::MBean.find_by_name "java.lang:type=GarbageCollector,name=PS MarkSweep" | |
ps_mark_sweep.collection_count | |
ps_mark_sweep.collection_time | |
ps_scavenge = JMX::MBean.find_by_name "java.lang:type=GarbageCollector,name=PS Scavenge" | |
ps_scavenge.collection_count | |
ps_scavenge.collection_time | |
jvm_server = JMX::MBean.find_by_name "amx:pp=/J2EEDomain/J2EEServer[server],type=JVM,j2eeType=JVM,J2EEServer=server" | |
jvm_server.java_vendor | |
jvm_server.java_version | |
jvm_server.node | |
jvm_server.object_name | |
j2ee_server = JMX::MBean.find_by_name "amx:pp=/J2EEDomain,type=J2EEServer,name=server,j2eeType=J2EEServer" | |
j2ee_server.server_version | |
thread_mon = JMX::MBean.find_by_name "amx:pp=/mon/server-mon[server],type=thread-system-mon,name=jvm/thread-system" | |
thread_mon.totalstartedthreadcount.get("count") | |
thread_mon.threadcount.get("count") | |
webrequest_mon = JMX::MBean.find_by_name "amx:pp=/mon/server-mon[server],type=web-request-mon,name=web/request" | |
webrequest_mon.requestcount.get("count") | |
webrequest_mon.errorcount.get("count") | |
webrequest_mon.processingtime.get("count") | |
webrequest_mon.maxtime.get("count") | |
thread_pool_http1_mon = JMX::MBean.find_by_name "amx:pp=/mon/server-mon[server],type=thread-pool-mon,name=network/http-listener-1/thread-pool" | |
thread_pool_http1_mon.maxthreads.get("count") | |
thread_pool_http1_mon.totalexecutedtasks.get("count") | |
thread_pool_http1_mon.currentthreadsbusy.get("count") | |
thread_pool_http1_mon.currentthreadcount.get("count") | |
thread_pool_http1_mon.corethreads.get("count") | |
servlet_mon = JMX::MBean.find_by_name "amx:pp=/mon/server-mon[server],type=servlet-mon,name=__default-web-module/server" | |
servlet_mon.activeservletsloadedcount.get("current") | |
servlet_mon.activeservletsloadedcount.get("highWaterMark") | |
servlet_mon.activeservletsloadedcount.get("lowWaterMark") | |
servlet_mon.servletprocessingtimes.get("count") | |
servlet_mon.totalservletsloadedcount.get("count") | |
memory_mon = JMX::MBean.find_by_name "amx:pp=/mon/server-mon[server],type=memory-mon,name=jvm/memory" | |
memory_mon.committedheapsize_count.get("count") | |
memory_mon.committednonheapsize_count.get("count") | |
memory_mon.initheapsize_count.get("count") | |
memory_mon.initnonheapsize_count.get("count") | |
memory_mon.maxheapsize_count.get("count") | |
memory_mon.maxnonheapsize_count.get("count") | |
memory_mon.objectpendingfinalizationcount_count.get("count") | |
memory_mon.usedheapsize_count.get("count") | |
memory_mon.usednonheapsize_count.get("count") | |
class_loading_mon = JMX::MBean.find_by_name "amx:pp=/mon/server-mon[server],type=class-loading-system-mon,name=jvm/class-loading-system" | |
class_loading_mon.loadedclass_count.get("count") | |
class_loading_mon.totalloadedclass_count.get("count") | |
class_loading_mon.unloadedclass_count.get("count") | |
connection_request_queue_mon = JMX::MBean.find_by_name "amx:pp=/mon/server-mon[server],type=connection-queue-mon,name=network/http-listener-1/connection-queue" | |
connection_request_queue_mon.countopenconnections.get("count") | |
connection_request_queue_mon.countoverflows.get("count") | |
connection_request_queue_mon.countqueued.get("count") | |
connection_request_queue_mon.countqueued15minutesaverage.get("count") | |
connection_request_queue_mon.countqueued1minuteaverage.get("count") | |
connection_request_queue_mon.countqueued5minutesaverage.get("count") | |
connection_request_queue_mon.counttotalconnections.get("count") | |
connection_request_queue_mon.counttotalqueued.get("count") | |
connection_request_queue_mon.maxqueued.get("count") | |
connection_request_queue_mon.peakqueued.get("count") | |
connection_request_queue_mon.tickstotalqueued.get("count") |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment