본문으로 건너뛰기

Tomcat

환경 변수 추가

Tomcat 애플리케이션 서버 환경에서 Java 모니터링 에이전트를 효과적으로 사용하기 위해 필요한 JVM 옵션을 추가하는 방법을 안내합니다. 사용하는 운영체제에 맞게 설정하세요.

Linux

catalina.sh 파일 상단에 JAVA_OPTS 환경 변수를 추가하세요.

{Tomcat_PATH}/bin/catalina.sh
########## WHATAP START ############
WHATAP_HOME=/whatap
WHATAP_JAR=`ls ${WHATAP_HOME}/whatap.agent-*.jar | sort -V | tail -1`
JAVA_OPTS="${JAVA_OPTS} -javaagent:${WHATAP_JAR} "
########## WHATAP END ############
노트

ls ${WHATAP_HOME}/whatap.agent-*.jar | sort -V | tail -1 항목은 향후 에이전트 업데이트를 진행할 경우 최신 와탭 에이전트를 적용하기 위해서입니다.

Windows

  • setup.bat 파일을 통해 실행하는 경우

    catalina.bat 파일 상단에 JAVA_OPT 환경 변수를 추가하세요.

    {Tomcat_PATH}/bin/catalina.bat
    rem ########## WHATAP START ############
    set WHATAP_HOME=C:\whatap
    for /f %%f in ('dir /b /on "%WHATAP_HOME%\whatap.agent-*.jar"') do set last=%%f
    set WHATAP_JAR=%last%
    set WHATAP_OPTS=-javaagent:%WHATAP_HOME%\%WHATAP_JAR%

    if "x%JAVA_OPTS%"=="x" goto setWhatap

    set JAVA_OPTS_TMP=%JAVA_OPTS:"=%
    if not "x%JAVA_OPTS_TMP:whatap=%"=="x%JAVA_OPTS_TMP%" goto endWhatap

    :setWhatap
    set JAVA_OPTS=%JAVA_OPTS% %WHATAP_OPTS%

    :endWhatap
    rem ########## WHATAP END ############
  • Tomcat을 Windows 인스톨러로 설치한 경우

    1. 시작 > Apache Tomcat X.Y.Z. > Configure Tomcat을 선택하세요.

    2. Java 탭을 선택하세요.

    3. Java Options 텍스트 박스에 -javaagent 옵션을 추가하세요.

    -javaagent:{와탭 설치 경로}/whatap.agent-X.Y.Z.jar

    Apache Tomcat

Java 17 버전 이상

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
    example
    java -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-UNNAMED
    example
    java -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는 지원하지 않습니다.

다음 단계

  • 오픈 소스 추적

    애플리케이션에서 사용하는 프레임워크나 오픈소스 라이브러리에 따라 에이전트 옵션을 추가해야 할 수 있습니다. 예를 들어, 프레임워크나 오픈소스로 spring-boot-3.x, feign-client-11, okhttp3-4.4 사용 시 다음과 같이 옵션을 설정하세요.

    whatap.conf
    weaving=spring-boot-3.0,feign-11,okhttp3-4.4

    사용자의 애플리케이션 환경에 맞는 프레임워크나 오픈소스 라이브러리를 설정하는 방법은 다음 문서를 참조하세요.

  • 설치 점검하기

    프로젝트 생성 및 에이전트 설치, JVM 옵션까지 모두 적용했다면 다음 문서에서 점검 사항을 확인하세요.

  • 설치 문제 해결

    에이전트 설치 시 발생할 수 있는 다양한 문제들과 이를 해결하기 위한 구체적인 지침을 제공합니다. 방화벽 설정, SpringBoot 및 Tomcat JMX 설정, OSGI 프레임워크 사용 서버 설정 등 다양한 상황에 대한 해결책을 안내합니다. 자세한 내용은 다음 문서를 참조하세요.

  • 에이전트 설정

    에이전트 설정(whatap.conf) 파일에 옵션을 적용해 모니터링을 위한 다양한 기능을 제공합니다. 기본 설정부터 서버 연결 및 데이터 전송 설정, 여러 애플리케이션 서버의 설정 파일 관리 방법, 트랜잭션 추적 등을 포함합니다. 자세한 내용은 다음 문서를 참조하세요.

  • 모니터링 시작하기

    모든 설정을 완료한 다음 애플리케이션 서버를 다시 시작하세요. 에이전트가 정보를 수집하기 시작합니다. 먼저 애플리케이션 대시보드 메뉴에서 모니터링 데이터가 수집되는지 확인하세요. 애플리케이션 대시보드에 대한 자세한 내용은 다음 문서를 참조하세요.