Spring Boot
시작 스크립트에
JAVA_OPTS
환경 변수 옵션을 아래와 같이 추가합니다.
시작 스크립트
JAVA_OPTS=" ${JAVA_OPTS} -javaagent:${FLOWKAT_AGENT_DIR}/flowkat.agent.jar"
JAVA_OPTS=" ${JAVA_OPTS} -Dflowkat.config=${FLOWKAT_AGENT_DIR}/conf/flowkat.conf"
JAVA_OPTS=" ${JAVA_OPTS} -Dobj_name=spring"
JVM Thread Dump를 Java 6 ~ 8 버전에서는 JVM 옵션 없이 기본 지원하지만, 8버전 이후 부터는 다음과 같이 JVM 옵션을 적용해야 합니다.
Java 9 ~ Java 15 버전
-Djdk.attach.allowAttachSelf=true
Java 16 버전
-Djdk.attach.allowAttachSelf=true
--add-opens=jdk.attach/sun.tools.attach=ALL-UNNAMED
Java 17 버전 이상
--add-opens=java.base/java.lang=ALL-UNNAMED
- FLOWKAT_AGENT_DIR 은
flowkat.agent.jar
파일을 포함하고 있는 디렉터리를 의미합니다. - 위의 예처럼
-Dflokwat.config
환경변수를 통해 conf 파일을 지정할 수 있습니다. - 모니터링 대상이 다수인 경우, 이름이 중복되지 않도록
obj_name
옵션으로 각각의 이름을 지정합니다.
-
설정 완료 후 애플리케이션 서버를 다시 시작합니다.
-
애플리케이션 서버 로그 파일과 에이전트 로그 파일을 통해 에이전트가 정상 작동하는지, 에러가 발생하지 않았는지 확인합니다.
Spring Boot 로그파일은 사용자(개발자) 설정에서 확인 후 로그를 확인합니다.
Java 에이전트 제거
- 에이전트를 제거하기 위해서는 시작 스크립트에서 에이전트 옵션을 삭제하고 애플리케이션 서버를 재기동합니다.
- 설치한 에이전트 디렉터리를 삭제합니다.
Spring Boot 에이전트 삭제 예시
rm -rf /home/springboot/flowkat/agent.java