>Java >java지도 시간 >JRE Docker 이미지에서 실행되는 Java 컨테이너의 스레드 덤프 가져오기

JRE Docker 이미지에서 실행되는 Java 컨테이너의 스레드 덤프 가져오기

Patricia Arquette
Patricia Arquette원래의
2024-11-03 22:24:31594검색

Kubernetes 클러스터에서 JRE 기반 도커 이미지(예: tomcat:9.0-jre11-temurin)로 실행되는 웹 앱의 경우 JRE 기반 도커 이미지에 jstack과 같은 도구가 포함되어 있지 않기 때문에 스레드 덤프를 가져오는 것이 쉽지 않습니다. , jmap...

Jattach 도구를 사용하여 작업을 완료할 수 있습니다. TLDR; jattach는 Andrei Pangin이 C로 작성한 컴팩트 도구입니다.

먼저 컨테이너에 도구를 다운로드해야 합니다.

컨테이너의 껍질을 엽니다.

kubectl -n default exec -it your-tomcat-pod -c your-tomcat-container -- bash

작업 디렉토리에 jattach를 다운로드하세요

cd /working-dir

curl -L -O https://github.com/apangin/jattach/releases/download/v2.2/jattach 

chmod +x jattach

터미널에서 스레드 덤프를 생성하고 출력 파일에 저장합니다

kubectl -n default exec your-tomcat-pod \
  -c your-tomcat-container  -- \
  /working-dir/jattach 1 threaddump > thread-dump.txt

그런 다음 jstack.review 도구를 사용하여 스레드 덤프를 분석할 수 있습니다.

Get thread dump of Java container running on JRE Docker image

위 내용은 JRE Docker 이미지에서 실행되는 Java 컨테이너의 스레드 덤프 가져오기의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.