VisualVM Profiler 사용할 때 특정 Profile Class가 표시되지 않는 문제 해결

2025. 12. 15. 14:24문제해결

 

배경

Troubleshooting Java 도서에서 서버의 특정 엔드포인트(/demo)에 대한 CPU 프로파일링을 실습하고 있었습니다. 해당 엔드포인트는 요청을 받으면 내부적으로 OpenFeign 라이브러리를 사용하여 "httpbin.org" 사이트에 요청을 보내고 일부러 5초 동안 응답 지연합니다.

 

프로파일링 결과는 다음과 같습니다.

 

위 결과를 보면 DemoController.demo() 메서드에 대한 정보만 나올 뿐이지 OpenFeign 호출에 대한 상세한 정보는 프로파일링 되지 않고 있습니다. 제가 원하는 것은 OpenFeign에 대한 프로파일링 정보까지도 표시되는 것이었습니다.

 

원인

프로파일러의 CPU settings에서 Profile classes 입력창에 OpenFeign 라이브러리 경로를 설정하지 않아서 프로파일링 되지 않았습니다.

 

해결 방법

현재 실행중인 서버의 프로파일링을 중지하게 되면 오른족의 CPU Settings 탭의 Profile classes 입력창이 활성화되어 편집할 수 있게 됩니다. 편집이 가능하게 되면 Profile classes 창에 다음과 같이 OpenFeign 라이브러리 경로를 추가합니다.

 

위와 같이 설정하였으면 다시 CPU 버튼을 눌러서 프로파일링을 시작하고 엔드포인트를 요청한 다음에 모니터링해봅니다.

실행 결과를 보면 정상적으로 OpenFeign 관련된 호출 정보가 표시된 것을 볼수 있습니다.

 

References