system-threads

시스템의 모든 스레드 스택과 락 상태를 조회합니다. 클러스터 관리자 권한이 필요합니다.

명령어 속성

항목설명
명령어 유형드라이버 쿼리
필요 권한클러스터 관리자 권한
라이선스 사용량집계 안 함
병렬 실행미지원
분산 실행미지원

문법

system-threads [prettystack=BOOL] [stack=BOOL]

옵션

prettystack=BOOL
스택 트레이스를 읽기 좋은 형식으로 변환합니다. (기본값: t)
  • t: 스택 트레이스를 jstack과 동일한 문자열 형식으로 변환하여 반환합니다.
  • f: 스택 트레이스를 클래스, 파일, 행 번호, 메서드 정보를 포함하는 맵의 배열로 반환합니다.
stack=BOOL
스택 트레이스를 조회합니다. (기본값: t)
  • t: JMX ThreadMXBean을 사용하여 스레드 스택 트레이스와 락 정보를 조회합니다.
  • f: 스택 트레이스를 조회하지 않고, 스레드 번호, 이름, 상태만 반환합니다.

출력 필드

필드타입설명
tid64비트 정수스레드 번호
name문자열스레드 이름
state문자열스레드 상태. NEW, RUNNABLE, BLOCKED, WAITING, TIMED_WAITING, TERMINATED 값 중 하나를 반환합니다.
stacktrace문자열스레드 스택 트레이스 (jstack과 동일한 형식). stack=f인 경우 이 필드는 반환하지 않습니다.

오류 코드

파싱 오류
오류 코드메시지설명
95040읽기 권한이 없습니다. 클러스터 관리자 권한이 필요합니다.클러스터 관리자 권한이 없는 경우
92004잘못된 옵션 값입니다: [option]=[value]prettystack 또는 stack 옵션에 불리언이 아닌 값을 지정한 경우
런타임 오류

해당 사항 없음

설명

system-threads 명령어는 JVM의 모든 스레드에 대한 스택 트레이스와 락 상태를 조회합니다. 장애 분석이나 성능 진단 시 스레드 덤프를 확인하는 용도로 사용합니다.

stack=t (기본값)인 경우 JMX ThreadMXBean을 통해 스레드 정보와 스택 트레이스를 함께 조회합니다. prettystack=t (기본값)이면 락 정보를 포함하는 jstack 형식의 문자열로 변환합니다. prettystack=f이면 스택 트레이스를 클래스, 파일, 행 번호, 메서드 정보를 포함하는 맵의 배열로 반환합니다.

stack=f인 경우 스레드 목록만 조회하고, 스택 트레이스는 반환하지 않습니다. 스택 트레이스 없이 스레드 상태만 빠르게 확인할 때 유용합니다.

이 명령어를 실행하려면 클러스터 관리자 권한이 필요합니다.

사용 예

  1. 전체 스레드 덤프 조회

    system-threads
    
  2. 스택 트레이스 없이 스레드 목록만 조회

    system-threads stack=f
    
  3. 스택 트레이스를 배열 형식으로 조회

    system-threads prettystack=f
    
  4. BLOCKED 상태의 스레드 조회

    system-threads | search state == "BLOCKED"
    

호환성

system-threads 명령어는 소나 4.0 이전 버전부터 제공되었습니다.