5.7.2 Acquiring the extended verbosegc information
In the J2EE server usrconf.cfg file, if you specify the options shown in the table below, you can acquire extended verbosegc information. From the extended verbosegc information, you can acquire the information for estimating the Java heap area size, Metaspace area size, required for that server. Note that the stack trace at OutOfMemoryError occurrence time is also output in the Java log.
Optional |
Meaning |
---|---|
-XX:+HitachiVerboseGC |
Specify whether to output the extended verbosegc information. The information is output for each type of GC's internal areas: Eden, Survivor, Tenured, and Metaspace areas. Nothing is output by default. If -XX:+HitachiVerboseGC is specified, the extended verbosegc information is output and if -XX:-HitachiVerboseGC is specified, the extended verbosegc information is not output. |
-XX:+HitachiVerboseGCPrintDate |
Specify whether to display the date of log output at the beginning of each line of the log in which the extended verbosegc information is output. |
-XX:+HitachiVerboseGCCpuTime |
During the period between the start of GC until the end of GC, specify whether only the time spent in user mode and kernel mode by the GC execution thread should be displayed or the execution time should be displayed. |
-XX:HitachiVerboseGCIntervalTime=Time-interval |
Specify a numeric value (Unit: Seconds) as an output time interval for -XX:+HitachiVerboseGC. The default value for the time interval is 0 (Output every time GC occurs). Note that when you specify the time interval, the GC frequency during that time interval is also displayed. |
-XX:+HitachiVerboseGCPrintCause |
Specify whether to display the cause for the occurrence of GC in the log in which the extended verbosegc information is output. |
-XX:+HitachiCommaVerboseGC |
Specify whether the log in which the extended verbosegc information is output should be in CSV format. If the log is output in the CSV format, all the brackets (( ) [ ] < >) and delimiters of the extended verbosegc information are omitted, and the numeric values or character strings delimited by comma (,) are output. |
-XX:+HitachiVerboseGCPrintTenuringDistribution |
Specify whether to output Tenuring Distribution information of Survivor area. Nothing is output by default. For output format or output information, see 9.11 Tenuring distribution information output functionality of the Survivor area. |
-XX:+HitachiVerboseGCPrintJVMInternalMemory |
Specify whether the heap information managed in JavaVM is output to the JavaVM log file. |
-XX:+HitachiVerboseGCPrintThreadCount |
Specify whether the Java thread count is output to the JavaVM log file to monitor the Java thread count. |
-XX:+HitachiVerboseGCPrintDeleteOnExit |
Specify whether the cumulative heap size allocated by JavaVM by invoking java.io.File.deleteOnExit()and the frequency of method invocation are output to the JavaVM log file. |
-XX:+PrintCodeCacheInfo |
Specify whether to output the usage of the code cache area, and also whether to output a message informing the user that the usage has reached the threshold value. |
The format and the example of the log file output are as follows:
- Output format
[id]<date>(Skip Full:full_count, Copy:copy_count)[gc_kind gc_info, gc_time secs][DefNew::Eden: eden_info][DefNew::Survivor: survivor_info][Tenured: tenured_info][Metaspace: metaspace_info][class space: class_space_info] [cause:cause_info][User: user_cpu secs][Sys: system_cpu secs] ][IM:jvm_alloc_size, mmap_total_size, malloc_total_size][TC: thread_count][DOE: doe_alloc_size, called_count] [CCI: cc_used_sizeK, cc_max_sizeK, cc_infoK]
Description
-
id: JavaVM log file identifier
The following table describes the JavaVM log file identifiers. Use these identifiers for investigation by filtering log as per log contents (functions).
Table 5‒24: JavaVM log file identifiers Identifiers
Log contents
CCI
Code cache area information
CLT
Stack trace of class library
JCC
Information on the failure of JIT compilation
JMS
Information on the JIT complier thread that prevents JIT compilation
OMH
Information on the frequency of OutOfMemory occurrences
OOM
Exception information when OutOfMemoryError occurs and stack trace
PTD
Tenuring distribution information of Survivor area
VGC
Extended verbosegc information
-
date: Date and time
-
full_count: Frequency of skipping Full GC (Only when you specify -XX:HitachiVerboseGCIntervalTime)
-
copy_count: Frequency of skipping copy GC (Only when you specify -XX:HitachiVerboseGCIntervalTime)
-
gc_kind: GC type (Full GC or GC)
-
gc_info: GC information (Area length prior to GC-> Area length after GC (Area size))
(Example) 264K->0K(512K)
-
gc_time: GC elapsed time (Unit: Seconds)
-
eden_info: Eden information
-
survivor_info: Survivor information
-
tenured_info: Tenured information
-
metaspace_info: Metaspace area information
-
class_space_info: CompressedClassSpace information
-
cause_info: Cause of GC
-
user_cpu secs: CPU time spent in user mode by the GC thread (Unit: Seconds)
-
system_cpu secs: CPU time spent in kernel mode by the GC thread. (Unit: Seconds)
-
jvm_alloc_size: The size of the area currently in use, among the areas managed in JavaVM (size of the area currently in use among the total size of mmap_total_size and malloc_total_size) (only when -XX:+HitachiVerboseGCPrintJVMInternalMemory is specified)
-
mmap_total_size: The total size of C heap allocated by mmap (in Windows VirtualAlloc) , among the areas managed in JavaV (only when -XX:+HitachiVerboseGCPrintJVMInternalMemory is specified)
-
malloc_total_size: The total size of C heap allocated by malloc, among the areas managed in JavaVM (only when -XX:+HitachiVerboseGCPrintJVMInternalMemory is specified)
-
thread_count: Java thread count (only when -XX:+HitachiVerboseGCPrintThreadCount is specified)
-
doe_alloc_size: The accumulated heap size allocated by invoking java.io.File.deleteOnExit() (only when -XX:+HitachiVerboseGCPrintDeleteOnExit is specified)
-
called_count: The number of times java.io.File.deleteOnExit() is invoked (only when -XX:+HitachiVerboseGCPrintDeleteOnExit is specified)
-
cc_used_size: Size of the code cache area used during GC (unit: kilobyte) (only when -XX:+PrintCodeCacheInfo is specified)
-
cc_max_size: Maximum size of the code cache area (unit: kilobyte) (only when -XX:+PrintCodeCacheInfo is specified)
-
cc_info: Maintenance information (only when -XX:+PrintCodeCacheInfo is specified)
-
- Example of output
-
Examples of output when the -XX:+HitachiCommaVerboseGC option is specified are as follows:
VGC,Fri Jan 23 21:37:50 2004,11,41,0,GC,16886,16886,65088,0.0559806, 4094,0,4096,447,447,448,12345,16439,60544,1116,1116,4096,0,0.0312500, 0.0156250,729,928,0,509,2167,2054,2301,49152,2304 VGC,Fri Jan 23 21:37:55 2004,6,24,0,Full GC,65082,65082,65088,0.4294532, 4094,4094,4096,447,447,448,60541,60541,60544,1116,1116,4096,0,0.0156250, 0.0312500,729,928,0,509,16,170,2301,49152,2304