2010-08-12 6 views
4

자바 핫스팟 VM 옵션에 다음과 같은 두 가지 옵션이 있습니다 : 지금까지 내가 IBM JVM에서 이러한 옵션이 없음을 볼 수IBM JVM에서 "-XX : OnError"또는 "-XX : OnOutOfMemoryError"와 같은 것이 있습니까?

-XX:OnError="<cmd args>;<cmd args>" Run user-defined commands on fatal error. (Introduced in 1.4.2 update 9.) 

-XX:OnOutOfMemoryError="<cmd args>; 
<cmd args>" Run user-defined commands when an OutOfMemoryError is first thrown. (Introduced in 1.4.2 update 12, 6) 

가.
맞습니까?

힙 덤프가 생성 된 경우 일부 셸 스크립트를 호출해야합니다.
가장 간단한 방법은 무엇입니까?

답변

5

IBM J9 JDK는 -Xdump flag을 통해 상기 능력을 제공합니다. 이것이 덤프 에이전트를 등록하는 기본 방법입니다.

Oome에서 힙 덤프를 생성하도록 JVM을 구성하는 일반적인 방법은 응용 프로그램이나 JVM에서 발생한 메모리 부족 오류를 모두 catch하고 힙 관리자를 사용하여 "워킹"을위한 덤프를 준비하는 것입니다.

-Xdump:system+heap+java:events=systhrow+user,filter=java/lang/OutOfMemoryError,request=exclusive+prepwalk+compact 

참조 : Eclipse Memory Analyzer Guide

JAVA_DUMP_OPTS environment variable도 사용할 수 있습니다. 이에 대한 자세한 내용은 IBM JDK diagnostics guide에서 확인할 수 있습니다.

오세요에서 명령을 실행하는 목적으로 편집

the tool option -Xdump 옵션에 지정해야합니다.

0

정확하게 기억한다면 Sun JVM의 인스트루먼트 버전이므로 IBM의 JVM이 동일한 플래그를 지원할 것으로 기대됩니다. Java의 주요 버전 간 명령 행 옵션을 비교할 수 있습니까? (예 : Sun 1.6 대 IBM 1.4.2?)

플래그에 대한 해결책을 찾지 못하면 IBM JVM이 덤프 파일의 전체 경로를 추가하여 /tmp/dump-locations 파일을 업데이트한다는 사실을 이용할 수 있습니다. cron 작업은 마지막 실행 이후에 해당 파일을 터치하면 스크립트를 실행할 수 있습니다.

3

-Xdump은 매우 강력합니다. 당신의 OOM 사례를 들어

, 뭔가 같은 :

"-Xdump : 도구 : 이벤트 = 던져, 필터 = * OutOfMemoryError를, 간부 = cmd_to_run

관련 문제