이 문서에서는 JDK Flight Recorder 및 JDK Mission Control을 사용하여 Java 워크로드를 모니터링하고 관리하는 방법을 보여 줍니다.
2018년 Oracle 오픈 소스 Mission Control은 OpenJDK 우산 아래 프로젝트로 관리됩니다. 플라이트 레코더와 함께 Mission Control은 Java 워크로드에 대해 오버헤드가 낮은 대화형 모니터링 및 관리 기능을 제공합니다.
JDK Mission Control 설치 및 JVM에 연결
아래 단계에 따라 JDK Mission Control을 설치하고, JVM(Java Virtual Machine)에 연결하고, 실행 중인 애플리케이션의 모든 측면을 실시간으로 파악할 수 있습니다.
JDK가 설치되어 있는지 확인합니다.
GitHub의 OpenJDK JMC 프로젝트에서 JDK Mission Control 바이너리 파일을 찾습니다. 그런 다음 시스템에 적합한 버전을 선택하고 로컬로 저장한 다음 해당 디렉터리로 변경합니다.
다운로드한 파일을 확장합니다. 아래 예제는 Azul Zulu Mission Control에 대한 것입니다.
Linux:
tar -xzvf zmc8.0.0.17-ca-linux_x64.tar.gzWindows:
unzip -zxvf zmc8.0.0.17-ca-win_x64.zipmacOS:
tar -xzvf zmc8.0.0.17-ca-macos_x64.tar.gz호환되는 JDK 중 하나를 사용하여 Java 애플리케이션을 시작합니다. 다음은 그 예입니다.
$JAVA_HOME/bin/java -jar MyApplication.jarZulu Mission Control 시작
Linux:
zmc8.0.0.17-ca-linux_x64/zmcWindows:
zmc8.0.0.17-ca-win_x64\zmc.exemacOS:
zmc8.0.0.17-ca-macos_x64/Zulu\ Mission\ Control.app/Contents/MacOS/zmc애플리케이션을 실행하는 JVM을 찾습니다.
Zulu Mission Control 창의 왼쪽 위 창에서 JVM 브라우저 레이블이 지정된 탭을 선택합니다.
애플리케이션을 실행하는 JVM 인스턴스의 왼쪽 위에서 목록 항목을 선택하고 확장합니다.
필요한 경우 비행 기록을 시작하십시오.
플라이트 레코더에 "녹화 없음"이 표시되면 녹화를 시작하십시오. 녹음/녹화를 시작하려면 JVM 브라우저 탭에서 플라이트 레코더 줄을 마우스 오른쪽 단추로 클릭한 다음 비행 기록 시작을 선택합니다.
고정된 기간 기록 또는 연속 녹화를 선택하고 프로파일링 구성(세분화됨) 또는 연속 구성(낮은 오버헤드)을 선택한 다음 마침을 선택합니다.
비행 기록을 추출합니다.
비행 기록은 JVM 브라우저의 플라이트 레코더 줄 아래에 표시되어야 합니다. 비행 기록을 나타내는 줄을 마우스 오른쪽 단추로 클릭하고 전체 기록 덤프를 선택합니다.
줄루 미션 컨트롤 창의 오른쪽에 있는 큰 창에 새 탭이 나타납니다. 이 창은 애플리케이션을 실행하는 JVM에서 방금 덤프된 플라이트 기록을 나타냅니다.
Zulu Mission Control을 사용하여 비행 기록 검사
- 아직 활성화되지 않은 경우 Zulu Mission Control 창의 왼쪽 창에서 개요 레이블이 지정된 탭을 선택합니다. 이 탭에는 비행 기록에 수집된 데이터의 다양한 보기가 포함되어 있습니다.
리소스
Azul Systems는 Azul Systems 부국장 사이먼 리터가 내레이션한 데모 비디오를 제공합니다. 비디오는 플라이트 레코더와 줄루 미션 컨트롤의 구성 및 설정을 안내합니다. 플라이트 레코더 토론은 31:30에 시작됩니다.