JVM---GC-GC日志
/**
* 【GC---日志分析】
* <显示GC日志>
* 输出GC日志
* -XX:+PrintGC 或 -verbose:gc
* 输出GC的详细日志
* -XX:+PrintGCDetails
* 输出GC的时间戳(基准时间)
* -XX:+PrintGCTimeStamps
* 输出GC的时间戳(日期时间)
* -XX:+PrintGCDateStamps
* 在进行GC前后打印出堆的信息
* -XX:+PrintHeapAtGC
* 日志文件输出路径
* -Xloggc:.../logs/gc.log
*
* <说明>
* [GC ...]、[Full GC ...]
* 垃圾回收类型,Full说明发生了STW;
*
* 新生代:
* Serial GC 名字是 Default New Generation,显示为 [DefNew...]
* ParNew GC 名字是 Parallel New Generation,显示为 [ParNew...]
* Parallel Scavenge GC 名称是 [PSYoungGen...]
*
* 老年代:
* Parallel Old GC ,显示为 [ParOldGen...]
*
* G1 GC,显示为 garbage-first heap
*
* eg:
* [GC (Allocation Failure) [PSYoungGen: 1859K->544K(20992K)] 1859K->552K(69120K), 0.0007856 secs] [Times: user=0.01 sys=0.00, real=0.00 secs]
* a, Allocation Failure 分配内存失败
* b, [PSYoungGen: 1859K->544K(20992K)] 1859K->552K(69120K)
* [PSYoungGen: 1859K->544K(20992K)] Parallel Scavenge GC 回收新生代,新生代大小20992K,回收前大小1859K,回收后大小544K;
* 1859K->552K(69120K) 新生代+老年代总大小69120K,回收前新生代+老年代大小1859K,回收后新生代+老年代大小552K
*
* [Full GC (Allocation Failure) [PSYoungGen: 544K->0K(20992K)] [ParOldGen: 16K->405K(48128K)] 560K->405K(69120K), [Metaspace: 3121K->3121K(1056768K)], 0.0047044 secs] [Times: user=0.01 sys=0.00, real=0.01 secs]
*
* <GC日志分析工具>
* -Xloggc:.../logs/gc.log 将日志导出到指定目录的文件;
*
* 常用工具:
* gceasy.io 在线工具
* GCViewer 本地jar工具
* ...
*/


浙公网安备 33010602011771号