Red Hat Training

A Red Hat training course is available for Red Hat JBoss Operations Network

2.10. JMX Server

Overview

Table 2.353. Overview

Description: Generic JMX Server
Singleton: no
Plugin: JMX

Note

In order to monitor your Java applications via JMX, you need to expose their MBeans to remote JMX clients. In order to do this, you must pass in some system properties when starting your application's Java virtual machine.
To run a JVM with JMX remoting enabled without authentication, you must pass in the following system properties:
  • -Dcom.sun.management.jmxremote.port=19988
  • -Dcom.sun.management.jmxremote.ssl=false
  • -Dcom.sun.management.jmxremote.authenticate=false
You can require your remote JMX endpoint to demand authentication for clients to be able to connect to it. To run a JVM with JMX remoting enabled with password authentication:
  • -Dcom.sun.management.jmxremote.port=19988
  • -Dcom.sun.management.jmxremote.ssl=false
  • -Dcom.sun.management.jmxremote.authenticate=true
  • -Dcom.sun.management.jmxremote.password.file=/some/directory/jmxremote.password
Note that "jmxremote.password" must be read-only. On Windows, you must use "cacls" command to do this: cacls /some/directory/jmxremote.password /P username:R
A password file template is located at $JRE_HOME/lib/management/jmxremote.password.template. There is also an auth file that you can use to define other roles. For more information on setting this up and setting up SSL, see Monitoring and Management Using JMX.
If you wish to expose your JBossAS 4 application server's MBeans over this remote JMX mechanism, you must pass in these extra properties, in addition to the properties specified above:
  • -Djboss.platform.mbeanserver
  • -Djavax.management.builder.initial=org.jboss.system.server.jmx.MBeanServerBuilderImpl

Parent Resource Types

Child Resource Types

Autodiscovery Process Scans

Table 2.354. Metrics

Name Query
java process|basename|match=^java.*

Connection Properties

Table 2.355. 

Name Description Required Internal Name
Type The EMS connection type for this JMX Server yes type
Connector Address The connection url in the form of a JMXServiceURL yes connectorAddress
Install URI The installation path for the selected server type which will be used to find client libraries (if appropriate). no installURI
Principal The login principal/username no principal
Credentials The login credentials/password no credentials
Additional Class Path Entries Comma-separated list of directories and filenames that contain resources and classes needed to communicate with the JMX Server and its MBeans. If you specify 'some/directory/*.jar', all jars found in the given directory will be added. no additionalClassPathEntries

Note

You must use the internal name to reference Configuration Properties in Dynamic Group Definition expressions.

Metrics

none

Configuration Properties

none

Operations

none

Package Types

none

2.10.1. java.util.logging Service

Overview

Table 2.356. Overview

Description: Logging control for the java.util.logging subsystem
Singleton: yes
Plugin: JMX

Parent Resource Types

Child Resource Types

none

Connection Properties

Table 2.357. 

Name Description Required Internal Name
Object Name yes objectName
Name Template yes nameTemplate
Config Management Enabled When false, configuration reading for this resource will fail. yes configManagementEnabled

Note

You must use the internal name to reference Configuration Properties in Dynamic Group Definition expressions.

Metrics

none

Configuration Properties

Table 2.358. 

Name Description Required Internal Name
Appender List yes AppenderList

Note

You must use the internal name to reference Configuration Properties in Dynamic Group Definition expressions.

Operations

none

Package Types

none

2.10.2. Operating System Service

Overview

Table 2.359. Overview

Description:
Singleton: yes
Plugin: JMX

Parent Resource Types

Child Resource Types

none

Connection Properties

Table 2.360. 

Name Description Required Internal Name
Object Name yes objectName
Name Template yes nameTemplate
Description Template yes descriptionTemplate

Note

You must use the internal name to reference Configuration Properties in Dynamic Group Definition expressions.

Metrics

Table 2.361. Metrics

Name Type Description Internal Name
Free Physical Memory measurement The amount of free physical memory for the OS FreePhysicalMemorySize
Free Swap Memory measurement The amount of free swap space for the OS FreeSwapSpaceSize
Process CPU Time measurement The cpu time used by this process ProcessCpuTime
Process CPU Time per Minute measurement The cpu time used by this process ProcessCpuTime
Committed Virtual Memory measurement Size of virtual memory used by this process CommittedVirtualMemorySize

Note

You must use the internal name to reference Traits in Dynamic Group Definition expressions.

Configuration Properties

none

Operations

none

Package Types

none

2.10.3. Threading Service

Overview

Table 2.362. Overview

Description: Information on threading in the VM
Singleton: yes
Plugin: JMX

Parent Resource Types

Child Resource Types

none

Connection Properties

Table 2.363. 

Name Description Required Internal Name
Object Name yes objectName
Name Template yes nameTemplate

Note

You must use the internal name to reference Configuration Properties in Dynamic Group Definition expressions.

Metrics

Table 2.364. Metrics

Name Type Description Internal Name
Thread Count measurement Number of active threads in the system ThreadCount
Peak Thread Count measurement Peak count of active threads in the system PeakThreadCount
Total Started Thread Count measurement Count of threads started since system start TotalStartedThreadCount
Daemon Thread Count measurement Count of threads marked as daemons in the system DaemonThreadCount
Suspended Thread Count measurement Count of suspended threads SuspendedThreadCount
Deadlocked Thread Count measurement Count of threads that are deadlocked waiting to acquire object monitors. This is a CPU-time consuming metric. DeadLockedThreadCount

Note

You must use the internal name to reference Traits in Dynamic Group Definition expressions.

Configuration Properties

Table 2.365. 

Name Description Required Internal Name
Thread Contention Monitoring Enabled yes ThreadContentionMonitoringEnabled
Thread Cpu Time Enabled yes ThreadCpuTimeEnabled

Note

You must use the internal name to reference Configuration Properties in Dynamic Group Definition expressions.

Operations

Table 2.366. Metrics

Name Description
Reset Peak Thread Metrics Reset the peak number of threads
Find Monitor Deadlocked Threads Finds cycles of threads that are in deadlock waiting to acquire object monitors
Thread Dump Returns a summary of all live threads, including both daemon and non-daemon threads

Package Types

none

2.10.4. VM Class Loading System Service

Overview

Table 2.367. Overview

Description: The class loading system of the Java virtual machine
Singleton: yes
Plugin: JMX

Parent Resource Types

Child Resource Types

none

Connection Properties

Table 2.368. 

Name Description Required Internal Name
Object Name yes objectName
Name Template yes nameTemplate

Note

You must use the internal name to reference Configuration Properties in Dynamic Group Definition expressions.

Metrics

Table 2.369. Metrics

Name Type Description Internal Name
Loaded Classes measurement The number of classes currently loaded in the VM LoadedClassCount
Total Classes Loaded measurement The total number of classes loaded since the start of the VM TotalLoadedClassCount
Total Classes Loaded per Minute measurement The total number of classes loaded since the start of the VM TotalLoadedClassCount
Unloaded Classes measurement The total number of classes unloaded since the start of the VM UnloadedClassCount
Unloaded Classes per Minute measurement The total number of classes unloaded since the start of the VM UnloadedClassCount

Note

You must use the internal name to reference Traits in Dynamic Group Definition expressions.

Configuration Properties

Table 2.370. 

Name Description Required Internal Name
Verbose Output verbose information to the output stream to regarding class loading. Typically, a Java virtual machine implementation prints a message each time a class file is loaded. yes Verbose

Note

You must use the internal name to reference Configuration Properties in Dynamic Group Definition expressions.

Operations

none

Package Types

none

2.10.5. VM Compilation System Service

Overview

Table 2.371. Overview

Description: The compilation system of the Java virtual machine
Singleton: yes
Plugin: JMX

Parent Resource Types

Child Resource Types

none

Connection Properties

Table 2.372. 

Name Description Required Internal Name
Object Name yes objectName
Name Template yes nameTemplate

Note

You must use the internal name to reference Configuration Properties in Dynamic Group Definition expressions.

Metrics

Table 2.373. Metrics

Name Type Description Internal Name
Total Compilation Time measurement The approximate accumulated elapsed time spent in compilation TotalCompilationTime

Note

You must use the internal name to reference Traits in Dynamic Group Definition expressions.

Configuration Properties

none

Operations

none

Package Types

none

2.10.6. VM Memory System Service

Overview

Table 2.374. Overview

Description: The memory system of the Java virtual machine including both the heap and non-heap memory.
Singleton: yes
Plugin: JMX

Parent Resource Types

Child Resource Types

Connection Properties

Table 2.375. 

Name Description Required Internal Name
Object Name yes objectName
Name Template yes nameTemplate

Note

You must use the internal name to reference Configuration Properties in Dynamic Group Definition expressions.

Metrics

Table 2.376. Metrics

Name Type Description Internal Name
Heap Usage measurement Current heap memory usage {HeapMemoryUsage.used}
Heap Committed measurement Current heap memory allocated. This amount of memory is guaranteed for the Java virtual machine to use {HeapMemoryUsage.committed}
Non-Heap Usage measurement Current memory usage outside the heap {NonHeapMemoryUsage.used}
Non-Heap Committed measurement Current memory allocated outside the heap. This amount of memory is guaranteed for the Java virtual machine to use {NonHeapMemoryUsage.committed}
Objects Pending Finalization measurement The approximate number of objects for which finalization is pending. ObjectPendingFinalizationCount
Heap Initial Size trait The amount of heap that the Java virtual machine initially requests from the operating system {HeapMemoryUsage.init}
Heap Maximum Size trait Maximum amount of heap that can be used for memory management. This amount of memory is not guaranteed to be available if it is greater than the amount of committed memory. The Java virtual machine may fail to allocate memory even if the amount of used memory does not exceed this maximum size. {HeapMemoryUsage.max}
Non-Heap Initial Size trait The amount of non-heap memory that the Java virtual machine initially requests from the operating system {NonHeapMemoryUsage.init}
Non-Heap Maximum Size trait Maximum amount of non-heap memory that can be used for memory management. This amount of memory is not guaranteed to be available if it is greater than the amount of committed memory. The Java virtual machine may fail to allocate memory even if the amount of used memory does not exceed this maximum size. {NonHeapMemoryUsage.max}

Note

You must use the internal name to reference Traits in Dynamic Group Definition expressions.

Configuration Properties

Table 2.377. 

Name Description Required Internal Name
Verbose Output verbose information to the output stream to regarding Memory. Typically, a Java virtual machine implementation prints a message when it frees memory through garbage collection. yes Verbose

Note

You must use the internal name to reference Configuration Properties in Dynamic Group Definition expressions.

Operations

Table 2.378. Metrics

Name Description
Run Garbage Collection Runs the garbage collector.

Package Types

none

2.10.6.1. Garbage Collector Service

Overview

Table 2.379. Overview

Description: A garbage collector that collects one or more memory pool.
Singleton: no
Plugin: JMX
Parent Resource Types
Child Resource Types
none
Connection Properties

Table 2.380. 

Name Description Required Internal Name
Object Name yes objectName
Name Template yes nameTemplate
Description Template yes descriptionTemplate
Name The garbage collector's name yes name

Note

You must use the internal name to reference Configuration Properties in Dynamic Group Definition expressions.
Metrics

Table 2.381. Metrics

Name Type Description Internal Name
Collection Count measurement Number of collections CollectionCount
Collection Count per Minute measurement Number of collections CollectionCount
Collection Time measurement The amount of time spent in collection CollectionTime
Collection Time per Minute measurement The amount of time spent in collection CollectionTime
Memory Pool Names trait The names of the memory pools used by this type of garbage collector MemoryPoolNames

Note

You must use the internal name to reference Traits in Dynamic Group Definition expressions.
Configuration Properties
none
Operations
none
Package Types
none

2.10.6.2. Memory Pool Service

Overview

Table 2.382. Overview

Description: A memory pool represents the memory resource managed by the Java virtual machine and is managed by one or more memory managers.
Singleton: no
Plugin: JMX
Parent Resource Types
Child Resource Types
none
Connection Properties

Table 2.383. 

Name Description Required Internal Name
Object Name yes objectName
Name Template yes nameTemplate
Description Template yes descriptionTemplate
Name The memory pool's name yes name

Note

You must use the internal name to reference Configuration Properties in Dynamic Group Definition expressions.
Metrics

Table 2.384. Metrics

Name Type Description Internal Name
Used measurement Current memory usage {Usage.used}
Committed measurement Current memory allocated {Usage.committed}
Initial Size trait The amount of memory that the Java virtual machine initially requests from the operating system {Usage.init}
Maximum Size trait Maximum amount of memory that can be used for memory management. This amount of memory is not guaranteed to be available if it is greater than the amount of committed memory. The Java virtual machine may fail to allocate memory even if the amount of used memory does not exceed this maximum size. {Usage.max}
Memory Manager Names trait Garbage collectors for this space MemoryManagerNames
Type trait Pool location Type

Note

You must use the internal name to reference Traits in Dynamic Group Definition expressions.
Configuration Properties
none
Operations
none
Package Types
none