Play2
JVM 옵션 추가
Play2 애플리케이션 서버 환경에서 Java 모니터링 에이전트를 효과적으로 사용하기 위해 필요한 JVM 옵션을 추가하는 방법을 안내합니다.
$PLAY_HOME/framework/build 파일에 에이전트 옵션을 설정하세. 별도로 이용하는 시작 또는 중지 스크립트가 있다면 해당 파일에 적용하세요.
#! /usr/bin/env sh
########## WHATAP START ############
WHATAP_HOME=/apps/whatap
WHATAP_JAR=`ls ${WHATAP_HOME}/whatap.agent-*.jar | sort -V | tail -1`
JAVA_OPTS="${JAVA_OPTS} -Dwhatap.play2=2.2.6 -javaagent:${WHATAP_JAR}"
########## WHATAP END ############
if [ -z "${PLAY_VERSION}" ]; then
PLAY_VERSION="2.2.6"
...
노트
Play는 기본 설정 외 -Dwhatap.play2=2.2.6
옵션을 추가해야 합니다.
노트
Java 17 버전 이상의 경우 reflection 관련한 다음 옵션을 추가하세요.
--add-opens=java.base/java.lang=ALL-UNNAMED
힙 히스토그램 조회
와탭의 Java 모니터링에서는 JVM 메모리에 올라가 있는 Heap 점유 객체 현황(힙 메모리상의 객체별 사이즈)을 조회할 수 있는 기능을 기본으로 제공합니다. 애플리케이션 > 인스턴스 성능 분석 메뉴에서 힙 히스토그램 탭을 선택하세요.
Java 6 ~ 8 버전에서는 JVM 옵션 없이 기본 지원하지만, 일부 Java 버전에 따라 다음과 같이 JVM 옵션을 적용해야 합니다.
-
Java 9 ~ Java 15 버전
-Djdk.attach.allowAttachSelf=true
examplejava -javaagent:{WHATAP_HOME}/whatap.agent-X.Y.Z.jar -Djdk.attach.allowAttachSelf=true -jar {application.jar}
-
Java 16 버전 이상
-Djdk.attach.allowAttachSelf=true
--add-opens=jdk.attach/sun.tools.attach=ALL-UNNAMEDexamplejava -javaagent:{WHATAP_HOME}/whatap.agent-X.Y.Z.jar -Djdk.attach.allowAttachSelf=true --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=jdk.attach/sun.tools.attach=ALL-UNNAMED -jar {application.jar}
노트
Java 5 버전 이하, IBM Java는 지원하지 않습니다.
모니터링 시작하기
모든 설정 을 완료한 다음 애플리케이션 서버를 다시 시작하면 에이전트가 정보를 수집하기 시작합니다. 다음 문서를 확인하세요.