jhat - Java heap 해석 툴

형식

jhat [ options ] <heap-dump-file>

파라미터

options
옵션을 사용하는 경우, 커멘드명의 직후에 기술해 주세요.

heap-dump-file
브라우즈 대상이 되는 Java 바이너리 heap 덤프 파일. 복수의 heap 덤프를 포함한 덤프 파일의 경우, 「foo.hprof#3」과 같이 파일명의 뒤에 「#<number>」를 부가하는 것으로, 파일내의 특정의 덤프를 지정할 수 있습니다.

설명

jhat 커멘드는, java heap 덤프 파일을 해석해, Web 서버를 기동합니다. jhat 를 사용하면, 좋아하는 Web 브라우저를 사용해 heap 덤프를 브라우즈 할 수 있습니다. jhat 는, 「있는 기존의 클래스 「Foo」의 모든 인스턴스를 표시한다」라고 한, 사전에 설계된 쿠에리외,OQL (Object Query Language)도 지원합니다. OQL 의 헬프에는, jhat 에 의해 표시되는 OQL 헬프 페이지로부터 액세스 할 수 있습니다. 디폴트 포트를 사용하는 경우, OQL 의 헬프는 http://localhost:7000/oqlhelp/ 로 이용 가능합니다.

Java 의 heap 덤프를 생성하려면 , 몇개의 방법이 있습니다.

주:이 툴은시험적인 것이며, 장래의 JDK 의 버젼에서는이용할 수 없게 될가능성이 있습니다.

옵션

-stack false/true
객체 할당하고 호출 스택의 추적을 무효로 합니다. heap 덤프내에서 할당 사이트 정보를 사용할 수 없는 경우, 이 플래그를 false 로 설정할 필요가 있습니다. 디폴트는 true 입니다.
-refs false/true
객체에의 참조의 추적을 무효로 합니다. 디폴트는 true 입니다. 디폴트에서는, heap내의 모든 객체에 대해, 백 포인터 (지정된 객체를 포인트 하고 있는 객체. 참조자 또는 수신 참조라고도 불린다)가 계산됩니다.
-port port-number
jhat 의 HTTP 서버의 포트를 설정합니다. 디폴트는 7000 입니다.
-exclude exclude-file
「도달 가능한 객체」의 쿠에리로부터 제외해야 할 데이터 멤버의 일람을 포함한 파일을 지정합니다. 예를 들어, 이 파일에 java.lang.String.value 가 포함되어 있었을 경우, 특정의 객체 「o」로부터 도달 가능한 객체의 리스트를 계산할 때에,java.lang.String.value 필드에 관련하는 참조 패스가 고려되지 않게 됩니다.
-baseline baseline-dump-file
baseline가 되는 heap 덤프를 지정합니다. 양쪽 모두의 heap 덤프내에서 같은 객체 ID 를 가지는 객체는 「신규는 아니다」로서 마크 됩니다. 그 외의 객체는 「신규」로서 마크 됩니다. 이것은, 다른 2 개의 heap 덤프를 비교할 때에 도움이 됩니다.
-debug int
이 툴의 디버그 레벨을 설정합니다. 0 은 「디버그 출력 없음」을 의미합니다. 보다 큰 값을 설정하면(자), 보다 장황한 모드가 됩니다.
-version 
버젼 번호를 보고한 뒤, 종료합니다.
-h 
헬프 메세지를 출력해 종료합니다.
-help 
헬프 메세지를 출력해 종료합니다.
-J<flag> 
jhat 가 실행되고 있는 Java 가상 머신에 <flag> 를 건네줍니다. 예를 들어, 512M 바이트의 최대 heap 사이즈를 사용하려면 , -J-Xmx512m 로 합니다.

관련 항목


Copyright © 2006 Sun Microsystems, Inc. All Rights Reserved.

Sun
Java Software