사람용AI 에이전트용

JProfiler – No.1 Java 프로파일러
AI 에이전트를 위해Claude Code용Codex용Cursor용OpenCode용AI 에이전트를 위해

AI 에이전트는 코드를 읽을 수 있습니다. JProfiler와 함께라면 실행되는 모습까지 볼 수 있습니다.

PowerShell에서 다음 명령을 실행하세요:

irm https://www.ej-technologies.com/jprofiler/mcp/install.ps1 | iex

터미널에서 다음 명령을 실행하세요:

curl -fsSL https://www.ej-technologies.com/jprofiler/mcp/install.sh | sh

Node.js가 설치되어 있어야 합니다. 에이전트를 선택한 후 아래 지침을 따르세요.

Claude Code에서 다음 명령을 실행하세요:

claude mcp add jprofiler -- npx -y @ej-technologies/jprofiler-mcp@latest

JProfiler가 이미 설치되어 있다면 UI에서 바로 통합을 구성할 수 있습니다.

JProfiler를 열고 Session → AI Agent Integrations로 이동하여 사용 중인 에이전트를 선택하면 JProfiler가 자동으로 구성해 줍니다.

배경 아트워크
배경 아트워크
배경 아트워크
배경 아트워크

에이전트가 JProfiler로 할 수 있는 일

런타임 데이터가 없으면 에이전트는 소스 코드만으로 성능 문제를 짐작할 수밖에 없습니다. JProfiler를 사용하면 시간과 메모리가 실제로 어디에 소모되는지 측정하고 수정이 효과가 있었는지 검증할 수 있습니다.

진짜 핫스팟 찾기

소스 코드 검토만으로는 엉뚱한 메서드를 가리키기 쉽습니다. 샘플링 CPU 데이터, 콜 트리, 백트레이스가 시간이 실제로 어디에 소모되는지 에이전트에게 보여 줍니다.

GUI 없이 힙 덤프 분석하기

에이전트는 Eclipse MAT나 프로파일러 UI를 열 수 없습니다. JProfiler의 힙 분석은 HPROF 덤프 위에서 쿼리 가능한 뷰를 제공합니다. 가장 큰 객체, 리테인드 크기, GC 루트까지의 경로, 인스턴스 수가 그것입니다.

소스 검토에서 놓치는 JDBC 및 JPA 패턴 찾기

코드상으로는 무해해 보이는 쿼리도 새로 고침 주기마다 580번 실행된다면 문제가 될 수 있습니다. 데이터베이스 프로브가 제공하는 호출 횟수와 집계된 실행 정보를 통해 항목별 쿼리, N+1 패턴, 중복 검사를 드러낼 수 있습니다.

간헐적으로 느린 호출 잡아내기

어떤 호출은 평균적으로는 빠르지만 백 번에 한 번은 느립니다. 아웃라이어 감지는 최댓값이 평균에서 크게 벗어나는 메서드를 찾아내고, 예외 실행 기록은 가장 느린 호출들을 개별적으로 확장할 수 있게 유지하므로 에이전트가 병합된 평균 대신 개별적인 느린 실행을 분석할 수 있습니다.

곡선 피팅으로 알고리즘 복잡도 입증하기

이 메서드는 페이로드 크기에 대해 O(n²)일까요? 소스 코드만 놓고 Big-O를 두고 추측하는 대신, 에이전트는 측정된 (입력 크기, 시간) 점들을 바탕으로 곡선 피팅을 수행합니다.

에이전트가 직접 프로브를 작성하게 하기

내장 프로브가 문제를 다루지 못할 때 에이전트는 스크립트 프로브를 정의합니다. 메서드 호출마다 계산되어 실행 중인 JVM으로 푸시되는 경량 계측으로, 애플리케이션의 코드, 빌드, 배포를 변경하지 않고 사용할 수 있습니다.

... 그리고 그 밖의 다양한 기능

LLM 및 AI 호출 비용 측정

에이전틱 애플리케이션을 위한 컨텍스트 인식 메트릭: LLM 호출 지연 시간, 토큰 사용량, AI 프로브 이벤트를 통해 에이전트가 비용을 최소화하고 모델 성능을 최적화하도록 돕습니다.

수정이 효과가 있었음을 입증

수정 전후의 프로파일링 실행과 스냅샷 비교를 통해 에이전트가 성능을 측정하고, 수정 사항을 적용한 뒤 그 결과를 검증합니다.

교착 상태 및 락 경합 진단

교착 상태 분석을 위한 모니터 통계, 경합 타임라인, 스택 트레이스가 포함된 락 히스토리, 락 순서 역전 그래프, 라이브 JVM의 모니터 덤프를 제공합니다.

Docker 및 Kubernetes에서 JVM 프로파일링

컨테이너화된 JVM은 수동 에이전트 설정 없이 바로 선택할 수 있습니다. 컨테이너 내부의 힙 덤프와 CPU 데이터도 기본 설정 그대로 동작합니다.

운영 환경의 JFR 기록 분석

라이브 시스템에서 수집한 오버헤드가 낮은 JFR 스냅샷은 JProfiler의 모든 분석 기능을 활용해 조사할 수 있으므로 장애 사후 분석에 이상적입니다.

필요한 시점에 힙, 스레드, 모니터 덤프 생성

가상 스레드 계층 구조를 포함하여 라이브 JVM에 대한 시점 기반 작업을 수행할 수 있습니다. MBean 스냅샷과 기록 제어도 라이브 액션으로 제공됩니다.

할당 핫 스팟 찾기

스택 트레이스가 포함된 할당 기록은 메모리 압박이 어디에서 비롯되는지 보여 주고, 힙 덤프에는 객체별 할당 위치가 담겨 있습니다.

GC 일시 중지 분석

개별 가비지 컬렉션마다 원인, 일시 중지 시간, 단계와 컬렉션 전후의 힙 사용량을 확인할 수 있으며, 전체 GC 구성도 함께 제공됩니다.

트리거로 일시적인 상태 캡처

힙 사용량 급증 등 일시적인 상태를 자동으로 기록합니다. 조건이 충족되면 트리거가 스레드 덤프, 힙 덤프, MBean 스냅샷을 수집합니다.