2012-07-31 2 views
2

좋은 아침,자바 가비지 컬렉션 (Garbage Collection) 로그 출력

내가 자바 가비지 수집을 구문 분석하는 프로그램을 쓰고 있어요 내가 정확히 로그 출력 수단을 결정하는 데 도움이 필요합니다. 내 로그 파일 이해 다음과 같은 출력이 포함

46834.386: [Full GC 46834.386: [CMS: 412190K->414324K(8388608K), 2.9557920 secs] 4319571K->414324K(16769088K), [CMS Perm : 96586K->96555K(2097152K)], 2.9561693 secs] 
49394.883: [GC 49394.883: [ParNew: 8372352K->0K(8380480K), 0.0256383 secs] 8786676K->422169K(16769088K), 0.0258842 secs] 

을뿐만 아니라 난 정말 이해가 안 다음과 같은 출력이 포함

CMS: abort preclean due to time 2087298.141: [CMS-concurrent-abortable-preclean: 

0.680/1.055 secs] 
2087298.146: [GC[YG occupancy: 7515768 K (8380480 K)]2087298.146: [Rescan (parallel) , 5.0710721 secs]2087303.217: [weak refs processing, 0.0718252 secs] [1 CMS-remark: 3769931K(8388608K)] 11285700K(16769088K), 5.1432270 secs] 
2087303.289: [CMS-concurrent-sweep-start] 
2087305.311: [CMS-concurrent-sweep: 2.022/2.022 secs] 
2087305.311: [CMS-concurrent-reset-start] 
2087305.393: [CMS-concurrent-reset: 0.082/0.082 secs] 
2087307.415: [GC [1 CMS-initial-mark: 3769806K(8388608K)] 12129341K(16769088K), 4.3876237 secs] 
2087311.803: [CMS-concurrent-mark-start] 
2087311.816: [GC 2087311.816: [ParNew: 8372352K->0K(8380480K), 0.2496844 secs] 12142158K->3865939K(16769088K), 0.2499456 secs] 
2087318.573: [CMS-concurrent-mark: 6.508/6.770 secs] 
2087318.573: [CMS-concurrent-preclean-start] 
2087319.007: [CMS-concurrent-preclean: 0.410/0.434 secs] 
2087319.007: [CMS-concurrent-abortable-preclean-start] 

을 현재 내가 로그 출력을 분리하는 정규 표현식을 사용하고를 그 형식은 맨 위에 있습니다. 그것은 eden/tenured 가비지 콜렉션을 기반으로 출력을 세그 그램합니다. 내 질문은 이제 로그 출력 문장이 맨 밑에 무엇입니까? 그들은 에덴이나 재임 기간 쓰레기 콜레 션입니까?

감사합니다.

+0

CMS에 대한 자세한 내용은 http://docs.oracle.com/javase/6/docs/technotes/guides/vm/cms-6.html을 참조하십시오. 또한 GC 영향을 시각화 할 수있는 시각적 도구가 있습니다. http://www.tagtraum.com/gcviewer.html - 어쩌면 도움이 될 것입니다 ... –

+0

이것은 매우 좋은 기사 http://kramasundar.blogspot.com입니다. /2010/05/parallel-gc-vs-concurrent-gc.html 및 http://blog.ragozin.info/2011/10/java-cg-hotspots-cms-and-heap.html –

답변

0

일부 정보는 CMS GC 로그 here에서 찾을 수 있습니다. 샷에서는 CMS 알고리즘의 특정 단계를 거치지 않습니다.

GC 로그를 구문 분석하지 말 것을 권유하지만 형식이 불안정하고 불안정하며 멀티 스레드 로깅으로 인해 분석 할 수없는 경우가 있습니다.

확인 된 JMX 기본 대안은 here입니다.