jstat - Online Linux Manual PageSection : 1
Updated : 03 March 2015
Source : JDK 8
Note : Monitoring Tools

NAMEjstat − Monitors Java Virtual Machine (JVM) statistics​. This command is experimental and unsupported​.

SYNOPSISjstat [ generalOption | outputOptions vmid [ interval[s|ms] [ count ] ]generalOption A single general command−line option −help or −options​. See General Options​. outputOptions One or more output options that consist of a single statOption, plus any of the −t, −h, and −J options​. See Output Options​. vmid Virtual machine identifier, which is a string that indicates the target JVM​. The general syntax is the following: [protocol:][//]lvmid[@hostname[:port]/servername] The syntax of the vmid string corresponds to the syntax of a URI​. The vmid string can vary from a simple integer that represents a local JVM to a more complex construction that specifies a communications protocol, port number, and other implementation−specific values​. See Virtual Machine Identifier​. interval [s|ms] Sampling interval in the specified units, seconds (s) or milliseconds (ms)​. Default units are milliseconds​. Must be a positive integer​. When specified, the jstat command produces its output at each interval​. count Number of samples to display​. The default value is infinity which causes the jstat command to display statistics until the target JVM terminates or the jstat command is terminated​. This value must be a positive integer​.

DESCRIPTIONThe jstat command displays performance statistics for an instrumented Java HotSpot VM​. The target JVM is identified by its virtual machine identifier, or vmid option​.

VIRTUAL MACHINE IDENTIFIERThe syntax of the vmid string corresponds to the syntax of a URI: [protocol:][//]lvmid[@hostname[:port]/servername] protocol The communications protocol​. If the protocol value is omitted and a host name is not specified, then the default protocol is a platform−specific optimized local protocol​. If the protocol value is omitted and a host name is specified, then the default protocol is rmi​. lvmid The local virtual machine identifier for the target JVM​. The lvmid is a platform−specific value that uniquely identifies a JVM on a system​. The lvmid is the only required component of a virtual machine identifier​. The lvmid is typically, but not necessarily, the operating system's process identifier for the target JVM process​. You can use the jps command to determine the lvmid​. Also, you can determine the lvmid on Solaris, Linux, and OS X platforms with the ps command, and on Windows with the Windows Task Manager​. hostname A hostname or IP address that indicates the target host​. If the hostname value is omitted, then the target host is the local host​. port The default port for communicating with the remote server​. If the hostname value is omitted or the protocol value specifies an optimized, local protocol, then the port value is ignored​. Otherwise, treatment of the port parameter is implementation−specific​. For the default rmi protocol, the port value indicates the port number for the rmiregistry on the remote host​. If the port value is omitted and the protocol value indicates rmi, then the default rmiregistry port (1099) is used​. servername The treatment of the servername parameter depends on implementation​. For the optimized local protocol, this field is ignored​. For the rmi protocol, it represents the name of the RMI remote object on the remote host​.

OPTIONSThe jstat command supports two types of options, general options and output options​. General options cause the jstat command to display simple usage and version information​. Output options determine the content and format of the statistical output​. All options and their functionality are subject to change or removal in future releases​.

General OptionsIf you specify one of the general options, then you cannot specify any other option or parameter​. −help Displays a help message​. −options Displays a list of static options​. See Output Options​.

Output OptionsIf you do not specify a general option, then you can specify output options​. Output options determine the content and format of the jstat command's output, and consist of a single statOption, plus any of the other output options (−h, −t, and −J)​. The statOption must come first​. Output is formatted as a table, with columns that are separated by spaces​. A header row with titles describes the columns​. Use the −h option to set the frequency at which the header is displayed​. Column header names are consistent among the different options​. In general, if two options provide a column with the same name, then the data source for the two columns is the same​. Use the −t option to display a time stamp column, labeled Timestamp as the first column of output​. The Timestamp column contains the elapsed time, in seconds, since the target JVM started​. The resolution of the time stamp is dependent on various factors and is subject to variation due to delayed thread scheduling on heavily loaded systems​. Use the interval and count parameters to determine how frequently and how many times, respectively, the jstat command displays its output​. Note: Do not to write scripts to parse the jstat command's output because the format might change in future releases​. If you write scripts that parse jstat command output, then expect to modify them for future releases of this tool​. statOption Determines the statistics information the jstat command displays​. The following lists the available options​. Use the −options general option to display the list of options for a particular platform installation​. See Stat Options and Output​. class: Displays statistics about the behavior of the class loader​. compiler: Displays statistics about the behavior of the Java HotSpot VM Just−in−Time compiler​. gc: Displays statistics about the behavior of the garbage collected heap​. gccapacity: Displays statistics about the capacities of the generations and their corresponding spaces​. gccause: Displays a summary about garbage collection statistics (same as −gcutil), with the cause of the last and current (when applicable) garbage collection events​. gcnew: Displays statistics of the behavior of the new generation​. gcnewcapacity: Displays statistics about the sizes of the new generations and its corresponding spaces​. gcold: Displays statistics about the behavior of the old generation and metaspace statistics​. gcoldcapacity: Displays statistics about the sizes of the old generation​. gcmetacapacity: Displays statistics about the sizes of the metaspace​. gcutil: Displays a summary about garbage collection statistics​. printcompilation: Displays Java HotSpot VM compilation method statistics​. −h n Displays a column header every n samples (output rows), where n is a positive integer​. Default value is 0, which displays the column header the first row of data​. −t Displays a timestamp column as the first column of output​. The time stamp is the time since the start time of the target JVM​. −JjavaOption Passes javaOption to the Java application launcher​. For example, −J−Xms48m sets the startup memory to 48 MB​. For a complete list of options, see java(1)​.

Stat Options and OutputThe following information summarizes the columns that the jstat command outputs for each statOption​. −class option Class loader statistics​. Loaded: Number of classes loaded​. Bytes: Number of kBs loaded​. Unloaded: Number of classes unloaded​. Bytes: Number of Kbytes unloaded​. Time: Time spent performing class loading and unloading operations​. −compiler option Java HotSpot VM Just−in−Time compiler statistics​. Compiled: Number of compilation tasks performed​. Failed: Number of compilations tasks failed​. Invalid: Number of compilation tasks that were invalidated​. Time: Time spent performing compilation tasks​. FailedType: Compile type of the last failed compilation​. FailedMethod: Class name and method of the last failed compilation​. −gc option Garbage−collected heap statistics​. S0C: Current survivor space 0 capacity (kB)​. S1C: Current survivor space 1 capacity (kB)​. S0U: Survivor space 0 utilization (kB)​. S1U: Survivor space 1 utilization (kB)​. EC: Current eden space capacity (kB)​. EU: Eden space utilization (kB)​. OC: Current old space capacity (kB)​. OU: Old space utilization (kB)​. MC: Metaspace capacity (kB)​. MU: Metacspace utilization (kB)​. CCSC: Compressed class space capacity (kB)​. CCSU: Compressed class space used (kB)​. YGC: Number of young generation garbage collection events​. YGCT: Young generation garbage collection time​. FGC: Number of full GC events​. FGCT: Full garbage collection time​. GCT: Total garbage collection time​. −gccapacity option Memory pool generation and space capacities​. NGCMN: Minimum new generation capacity (kB)​. NGCMX: Maximum new generation capacity (kB)​. NGC: Current new generation capacity (kB)​. S0C: Current survivor space 0 capacity (kB)​. S1C: Current survivor space 1 capacity (kB)​. EC: Current eden space capacity (kB)​. OGCMN: Minimum old generation capacity (kB)​. OGCMX: Maximum old generation capacity (kB)​. OGC: Current old generation capacity (kB)​. OC: Current old space capacity (kB)​. MCMN: Minimum metaspace capacity (kB)​. MCMX: Maximum metaspace capacity (kB)​. MC: Metaspace capacity (kB)​. CCSMN: Compressed class space minimum capacity (kB)​. CCSMX: Compressed class space maximum capacity (kB)​. CCSC: Compressed class space capacity (kB)​. YGC: Number of young generation GC events​. FGC: Number of full GC events​. −gccause option This option displays the same summary of garbage collection statistics as the −gcutil option, but includes the causes of the last garbage collection event and (when applicable) the current garbage collection event​. In addition to the columns listed for −gcutil, this option adds the following columns​. LGCC: Cause of last garbage collection GCC: Cause of current garbage collection −gcnew option New generation statistics​. S0C: Current survivor space 0 capacity (kB)​. S1C: Current survivor space 1 capacity (kB)​. S0U: Survivor space 0 utilization (kB)​. S1U: Survivor space 1 utilization (kB)​. TT: Tenuring threshold​. MTT: Maximum tenuring threshold​. DSS: Desired survivor size (kB)​. EC: Current eden space capacity (kB)​. EU: Eden space utilization (kB)​. YGC: Number of young generation GC events​. YGCT: Young generation garbage collection time​. −gcnewcapacity option New generation space size statistics​. NGCMN: Minimum new generation capacity (kB)​. NGCMX: Maximum new generation capacity (kB)​. NGC: Current new generation capacity (kB)​. S0CMX: Maximum survivor space 0 capacity (kB)​. S0C: Current survivor space 0 capacity (kB)​. S1CMX: Maximum survivor space 1 capacity (kB)​. S1C: Current survivor space 1 capacity (kB)​. ECMX: Maximum eden space capacity (kB)​. EC: Current eden space capacity (kB)​. YGC: Number of young generation GC events​. FGC: Number of full GC events​. −gcold option Old generation and metaspace behavior statistics​. MC: Metaspace capacity (kB)​. MU: Metaspace utilization (kB)​. CCSC: Compressed class space capacity (kB)​. CCSU: Compressed class space used (kB)​. OC: Current old space capacity (kB)​. OU: Old space utilization (kB)​. YGC: Number of young generation GC events​. FGC: Number of full GC events​. FGCT: Full garbage collection time​. GCT: Total garbage collection time​. −gcoldcapacity option Old generation size statistics​. OGCMN: Minimum old generation capacity (kB)​. OGCMX: Maximum old generation capacity (kB)​. OGC: Current old generation capacity (kB)​. OC: Current old space capacity (kB)​. YGC: Number of young generation GC events​. FGC: Number of full GC events​. FGCT: Full garbage collection time​. GCT: Total garbage collection time​. −gcmetacapacity option Metaspace size statistics​. MCMN: Minimum metaspace capacity (kB)​. MCMX: Maximum metaspace capacity (kB)​. MC: Metaspace capacity (kB)​. CCSMN: Compressed class space minimum capacity (kB)​. CCSMX: Compressed class space maximum capacity (kB)​. YGC: Number of young generation GC events​. FGC: Number of full GC events​. FGCT: Full garbage collection time​. GCT: Total garbage collection time​. −gcutil option Summary of garbage collection statistics​. S0: Survivor space 0 utilization as a percentage of the space's current capacity​. S1: Survivor space 1 utilization as a percentage of the space's current capacity​. E: Eden space utilization as a percentage of the space's current capacity​. O: Old space utilization as a percentage of the space's current capacity​. M: Metaspace utilization as a percentage of the space's current capacity​. CCS: Compressed class space utilization as a percentage​. YGC: Number of young generation GC events​. YGCT: Young generation garbage collection time​. FGC: Number of full GC events​. FGCT: Full garbage collection time​. GCT: Total garbage collection time​. −printcompilation option Java HotSpot VM compiler method statistics​. Compiled: Number of compilation tasks performed by the most recently compiled method​. Size: Number of bytes of byte code of the most recently compiled method​. Type: Compilation type of the most recently compiled method​. Method: Class name and method name identifying the most recently compiled method​. Class name uses slash (/) instead of dot (​.) as a name space separator​. Method name is the method within the specified class​. The format for these two fields is consistent with the HotSpot −XX:+PrintCompilation option​.

EXAMPLESThis section presents some examples of monitoring a local JVM with an lvmid of 21891​.

The gcutil OptionThis example attaches to lvmid 21891 and takes 7 samples at 250 millisecond intervals and displays the output as specified by the −gcutil option​. The output of this example shows that a young generation collection occurred between the third and fourth sample​. The collection took 0​.078 seconds and promoted objects from the eden space (E) to the old space (O), resulting in an increase of old space utilization from 66​.80% to 68​.19%​. Before the collection, the survivor space was 97​.02% utilized, but after this collection it is 91​.03% utilized​. jstat −gcutil 21891 250 7 S0 S1 E O M CCS YGC YGCT FGC FGCT GCT 0​.00 97​.02 70​.31 66​.80 95​.52 89​.14 7 0​.300 0 0​.000 0​.300 0​.00 97​.02 86​.23 66​.80 95​.52 89​.14 7 0​.300 0 0​.000 0​.300 0​.00 97​.02 96​.53 66​.80 95​.52 89​.14 7 0​.300 0 0​.000 0​.300 91​.03 0​.00 1​.98 68​.19 95​.89 91​.24 8 0​.378 0 0​.000 0​.378 91​.03 0​.00 15​.82 68​.19 95​.89 91​.24 8 0​.378 0 0​.000 0​.378 91​.03 0​.00 17​.80 68​.19 95​.89 91​.24 8 0​.378 0 0​.000 0​.378 91​.03 0​.00 17​.80 68​.19 95​.89 91​.24 8 0​.378 0 0​.000 0​.378

Repeat the Column Header StringThis example attaches to lvmid 21891 and takes samples at 250 millisecond intervals and displays the output as specified by −gcnew option​. In addition, it uses the −h3 option to output the column header after every 3 lines of data​. In addition to showing the repeating header string, this example shows that between the second and third samples, a young GC occurred​. Its duration was 0​.001 seconds​. The collection found enough active data that the survivor space 0 utilization (S0U) would have exceeded the desired survivor Size (DSS)​. As a result, objects were promoted to the old generation (not visible in this output), and the tenuring threshold (TT) was lowered from 31 to 2​. Another collection occurs between the fifth and sixth samples​. This collection found very few survivors and returned the tenuring threshold to 31​. jstat −gcnew −h3 21891 250 S0C S1C S0U S1U TT MTT DSS EC EU YGC YGCT 64​.0 64​.0 0​.0 31​.7 31 31 32​.0 512​.0 178​.6 249 0​.203 64​.0 64​.0 0​.0 31​.7 31 31 32​.0 512​.0 355​.5 249 0​.203 64​.0 64​.0 35​.4 0​.0 2 31 32​.0 512​.0 21​.9 250 0​.204 S0C S1C S0U S1U TT MTT DSS EC EU YGC YGCT 64​.0 64​.0 35​.4 0​.0 2 31 32​.0 512​.0 245​.9 250 0​.204 64​.0 64​.0 35​.4 0​.0 2 31 32​.0 512​.0 421​.1 250 0​.204 64​.0 64​.0 0​.0 19​.0 31 31 32​.0 512​.0 84​.4 251 0​.204 S0C S1C S0U S1U TT MTT DSS EC EU YGC YGCT 64​.0 64​.0 0​.0 19​.0 31 31 32​.0 512​.0 306​.7 251 0​.204

Include a Time Stamp for Each SampleThis example attaches to lvmid 21891 and takes 3 samples at 250 millisecond intervals​. The −t option is used to generate a time stamp for each sample in the first column​. The Timestamp column reports the elapsed time in seconds since the start of the target JVM​. In addition, the −gcoldcapacity output shows the old generation capacity (OGC) and the old space capacity (OC) increasing as the heap expands to meet allocation or promotion demands​. The old generation capacity (OGC) has grown from 11,696 kB to 13,820 kB after the eighty−first full garbage collection (FGC)​. The maximum capacity of the generation (and space) is 60,544 kB (OGCMX), so it still has room to expand​. Timestamp OGCMN OGCMX OGC OC YGC FGC FGCT GCT 150​.1 1408​.0 60544​.0 11696​.0 11696​.0 194 80 2​.874 3​.799 150​.4 1408​.0 60544​.0 13820​.0 13820​.0 194 81 2​.938 3​.863 150​.7 1408​.0 60544​.0 13820​.0 13820​.0 194 81 2​.938 3​.863

Monitor Instrumentation for a Remote JVMThis example attaches to lvmid 40496 on the system named remote​.domain using the −gcutil option, with samples taken every second indefinitely​. The lvmid is combined with the name of the remote host to construct a vmid of 40496@remote​.domain​. This vmid results in the use of the rmi protocol to communicate to the default jstatd server on the remote host​. The jstatd server is located using the rmiregistry command on remote​.domain that is bound to the default port of the rmiregistry command (port 1099)​. jstat −gcutil 40496@remote​.domain 1000 ​.​.​. output omitted

SEE ALSO•  java(1) •  jps(1) •  jstatd(1) •  rmiregistry(1)
+'bp
0
Johanes Gumabo
Data Size   :   69,739 byte
man-jstat-java-1.8.0-openjdk-1.8.0.171-8.b10.el6_9.x86_64.1Build   :   2024-12-05, 20:55   :  
Visitor Screen   :   x
Visitor Counter ( page / site )   :   3 / 167,807
Visitor ID   :     :  
Visitor IP   :   18.188.211.246   :  
Visitor Provider   :   AMAZON-02   :  
Provider Position ( lat x lon )   :   39.962500 x -83.006100   :   x
Provider Accuracy Radius ( km )   :   1000   :  
Provider City   :   Columbus   :  
Provider Province   :   Ohio ,   :   ,
Provider Country   :   United States   :  
Provider Continent   :   North America   :  
Visitor Recorder   :   Version   :  
Visitor Recorder   :   Library   :  
Online Linux Manual Page   :   Version   :   Online Linux Manual Page - Fedora.40 - march=x86-64 - mtune=generic - 24.12.05
Online Linux Manual Page   :   Library   :   lib_c - 24.10.03 - march=x86-64 - mtune=generic - Fedora.40
Online Linux Manual Page   :   Library   :   lib_m - 24.10.03 - march=x86-64 - mtune=generic - Fedora.40
Data Base   :   Version   :   Online Linux Manual Page Database - 24.04.13 - march=x86-64 - mtune=generic - fedora-38
Data Base   :   Library   :   lib_c - 23.02.07 - march=x86-64 - mtune=generic - fedora.36

Very long time ago, I have the best tutor, Wenzel Svojanovsky . If someone knows the email address of Wenzel Svojanovsky , please send an email to johanes_gumabo@yahoo.co.id .
If error, please print screen and send to johanes_gumabo@yahoo.co.id
Under development. Support me via PayPal.