hs_err 로그 파일이 생성되는 이유
- Java
- 2023. 2. 9.
자바 애플리케이션을 구동하다 보면 hs_err_pidXXXX.log 형태의 로그가 남는 경우가 있습니다. hs_err 로그는 JVM이 생성해 주는 에러 로그입니다. 주로 자바 프로그램이 강제 종료되거나 시작되지 못하는 등의 치명적인 오류가 발생했을 때 그 원인을 알려주기 위해 생성됩니다. hs_err 로그 파일에 대해 알아보겠습니다.
hs_err 파일이란?
hs_err 파일은 HotSpot Error의 약자로 자바 프로그램이 치명적인 오류로 충돌 시 JVM에서 생성하는 로그 파일입니다. 파일명 형태는 hs_err_pidXXXX.log와 같은데 XXXX에는 프로세스의 PID가 들어갑니다. 해당 로그 파일은 애플리케이션이 설치된 경로에 생성됩니다.
hs_err 파일에는 스레드 덤프, 메모리 사용량, 로드된 클래스, 라이브러리 목록 등을 포함해서 충돌에 대한 정보가 담겨있습니다. 예를 들어 자바 프로그램이 OutOfMemoryError로 강제 종료되는 경우 hs_err 파일에는 문제 발생 당시의 프로그램 메모리 사용량에 대한 정보가 기록됩니다. 또 이 문제가 메모리 누수로 발생했는지, 프로그램을 실행할 만큼 메모리가 충분치 않았는지 등을 알려줍니다.
hs_err 로그가 생성되면 개발자나 엔지니어에게는 디버깅을 위한 중요한 단서가 됩니다. 프로세스 충돌 문제 말고도 병목 현상이 발생하는 등의 성능 이슈가 있을 때 메모리 사용량에 대한 정보를 제공하기도 합니다. 만약 애플리케이션에 hs_err 로그 파일이 생성되면 지나치지 말고 유심히 봐야 합니다.
반응형
'Java' 카테고리의 다른 글
java.net.BindException : Address already in use bind 에러 해결 (0) | 2023.04.27 |
---|---|
자바 JVM, JDK, JRE의 차이 (0) | 2023.04.21 |
자바 .war .jar .class 파일 내용 보는 방법 (0) | 2023.01.22 |
자바 패키지란? (라이브러리와의 차이) (0) | 2022.10.08 |
자바 프로세스 스레드 덤프 생성 방법 (jstack) (0) | 2022.09.25 |