IT story

Java 가비지 수집 로그 분석 도구를 알고 있습니까?

hot-time 2021. 1. 7. 20:01
반응형

Java 가비지 수집 로그 분석 도구를 알고 있습니까?


내 웹 앱에서 콘솔 로그를 가져와 가비지 수집 정보를 구문 분석하여 의미있는 방식으로 표시하는 도구 또는 스크립트를 찾고 있습니다.

다음 플래그를 사용하여 Sun Java 1.4.2 JVM에서 시작하고 있습니다.

-verbose:gc -XX:+PrintGCTimeStamps -XX:+PrintGCDetails

로그 출력은 다음과 같습니다.

54.736: [Full GC 54.737: [Tenured: 172798K->18092K(174784K), 2.3792658 secs] 257598K->18092K(259584K), [Perm : 20476K->20476K(20480K)], 2.4715398 secs]

가비지 수집 추세를 시각적으로 그래프로 표시하는 도구가 있다면 이러한 종류의 로그 항목 수백 개를 이해하는 것이 훨씬 쉬울 것입니다.


IBM의 GC 툴킷은 고객이 요청한대로 정확하게 수행합니다.

https://www.ibm.com/developerworks/java/jdk/tools/gcmv/

그래도 Sun의 JVM의 GC 로그와 호환되는지 확실하지 않습니다.


gcviewer 는 원하는 작업을 수행합니다.


일부 사람들은 질문에 나와있는 것처럼 가비지 수집 로그를 실제로 구문 분석하지 않는 Java 프로브를 추가하고 있다고 생각합니다.

다른 사람 (gcviewer, gchisto, IBM)을 사용해 보았으며 GC 로그 분석을 위해 찾은 최고의 도구는 HPjmeter입니다.

주로 HP-UX JVM 용이지만 일반적으로 Sun JVM에서도 작동하며 훌륭한 작업을 수행합니다.

대체 텍스트
(출처 : xebia.com )


온라인 도구 http://gceasy.io를 사용해 보았는데 내 sun jdk 1.8 gc 로그를 읽을 수 있습니다.


jconsole보다 더 나은 것은 visualvm입니다 . 이는 Sun에서 자유롭게 개발하고 배포합니다. 도움이 될 수있는 gchisto 라는 GC 분석 플러그인 이 있습니다.

편집 : 죄송합니다. JDK 1.4.2 요구 사항을 보지 못했습니다. 이 경우 visualvm이 도움이되지 않습니다.


내가 찾은 가장 강력한 도구는 IBM 및 Hotspot JVM 로그 모두에서 작동하고이를 시각화하는 IBM의 PMAT입니다. https://www.ibm.com/developerworks/mydeveloperworks/groups/service/html/communityview?communityUuid=22d56091- 3a7b-4497-b36e-634b51838e11

IBM Support Assistant의 도구보다 더 빠르고 더 자세한 정보를 제공합니다. 이는 지난 7 월 12 일에 지속적으로 업데이트되고 있습니다.

그러나 정책 CMS로 로그를 구문 분석하는 데 몇 가지 문제가있는 것 같지만이 문제를 해결할 수 있기를 바랍니다.

PrintGCStats도 꽤 훌륭하고 좋은 통계를 제공하지만 시간이 지남에 따라 시각화를위한 것이 아니므로 작업이 필요합니다.


저는 YourKit 자바 프로파일 러 를 사용합니다.이 프로파일 러 를 사용하면 이런 종류의 것을 측정 할 수 있습니다.하지만 로그를 분석하는 대신 자체 형식을 사용합니다. Java 5에서는 더 많은 작업을 수행 할 수 있지만 1.4에서는 작동합니다.


Sun의 VisualGC사용해보십시오 . 에덴, 세대 및 파마 공간에서 무슨 일이 벌어지고 있는지에 대한 멋진 시각을 제공하는 JDK 4 및 5 버전이 있습니다. JAR을 추가하고 PID를 얻어야하며 Bob은 삼촌입니다.


몇 년 전 John Coomes (Hotspot GC 그룹)는 "가비지 수집에 대한 통계, 특히 gc 일시 중지 시간 합계, 평균, 최대 및 표준 편차"를 요약하는 awk 스크립트 인 PrintGCStats를 출시했습니다. 스크립트 사본은 java.net에서 호스팅됩니다. http://java.net/projects/printgcstats


jconsole많은 도움이 될 수 있지만 Java 5 이상인 것 같습니다. 우리 대학에서 SUN의 누군가가 말하는 것을 들었을 때 그는 Java 6의 가비지 수집기가 큰 응용 프로그램을 위해 거의 항상 복잡한 조정이 필요한 이전 것보다 훨씬 낫다고 말했습니다. Java 6 GC는 SMP에서 훨씬 더 잘 확장되는 것 같습니다.


VisualVM 용 gchisto 플러그인이 작동하지 않습니다 https://gchisto.dev.java.net/

jdk1.6에 대한 printgc의 모든 세부 정보가 포함 된 파일이 있지만이를 읽을 수있는 도구를 찾을 수 없습니다. 이전에는 jdk1.5에서 HPjmeter를 사용했지만 제대로 작동했지만 이제 jdk1.6에서는 그렇지 않습니다.

다음 시도 : Java Garbage Collector 용 IBM 패턴 모델링 및 분석 도구-파일을 인식하지 못합니다. GCCollector가 작동하지 않고 분석을 위해 파일을 계속 읽습니다.


JProbe Freeware (Eclipse 플러그인)와 같은 프로파일 링 도구를 사용해 보는 것은 어떻습니까?

참조 URL : https://stackoverflow.com/questions/541832/know-of-any-java-garbage-collection-log-analysis-tools

반응형