APM/Jennifer

[정리2-4] 제니퍼 JAVA 에이전트 설치 및 구성

투칼론 2021. 11. 21. 19:02
반응형

아래 설치 내용은 Unix/Linux 를 기준으로 설명합니다. Windows 시스템은 Shell 대신에 Windows에서 제공하는 bat 형식의 파워 쉘로 이해하시면 됩니다.

제니퍼 에이전트는 JAVA, .NET, PHP 버전별로 다르고, 여기에서는 가장 많이 사용되고 있는 JAVA 버전만 설명드립니다

 

1. 제니퍼 에이전트 설치

 

제니퍼 에이전트는 모니터링 대상인 WAS 시스템 혹은 독립 실행형 자바 프로그램이 실행되는 시스템에 설치합니다. 제니퍼 에이전트 설치 압축 파일을 해제하면 agent.java 디렉터리가 기본적으로 생성됩니다.

 

디렉토리명 설명

디렉토리 설명
conf 설정파일들을 포함하고 있는 디렉토리
libs 에이전트에서 시스템 정보를 가져오는 플랫폼별 shared library 등 라이브러리
logs 에이전트 로그파일들이 있는 디렉토리
upgrade 에이전트 업그레이드 파일을 저장할 디렉토리

 

에이전트 파일 설명

파일명 설명
jennifer.jar 제니퍼 에이전트의 공통 인터페이스의 JAR 파일
jennifer.impl-x.x.x.jar BCI 코드와 에이전트 트레이스할 수 있는 클래스의 JAR 파일
x.x.x는 버전을 의미하고, 여러개 존재할때 가장 최신 버전이 로딩됨

 

2. 에이전트 환경 설정

WAS 또는 독립형 자바 애플리케이션에 제니퍼로 모니터링하기 위해서는 아래 두개 옵션을 추가해야 합니다. WAS 별로 WAS에 맞는 방식으로 설정하는데, 여기에서는 WebLogic과 제우스 기준으로 설명합니다.

 

에이전트의 설치 디렉터리가 /home/jennifer5/agent.java라고 하면, WAS 혹의 자바 옵션에 아래와 같은 옵션을 추가해야합니다.

 

-Djennifer.config=/home/jennifer5/agent.java/conf/jennifer.conf      
-javaagent:/home/jennifer5/agent.java/jennifer.jar

위에서 jennifer.conf는 설치 시에 명명규칙으로 보통 에이전트명.conf (예, WAS11.conf) 로 구성합니다.

 

제니퍼 에이전트 설치 디렉터리 conf/jennifer.conf (에이전트명.conf)에 아래 옵션들을 확인하고, 프로젝트에 맞게 수정해주어야 합니다.

 

server_address = 127.0.0.1          # 데이터 서버의 IP 주소를 설정하면 됨 (WAS 에이전트에서 데이터 서버와 통신하기 위함)
server_port = 5000                   # 데이터 서버의 포트번호
domain_id = 1000                    # 도메인 ID (데시보드에 여러 업무를 모니터링하므로, 업무 관점에서 도메인 ID)
                                            # 침고로, 도메인 ID는 제니퍼 서버에서 부여한 도메인 ID 임
log_dir = ../logs                        # 표준에 맞게 로그 디렉터리를 지정하면 됨
log_encoding = UTF-8               # 로그 파일의 한글 인코딩 방식 지정
log_rotaion = true                    # 매일 새로운 로그 로테이션 여부

inst_id = 10000                        # inst_id (1~3267)는 설정하지 않으면, 제니퍼가 자동으로 10000부터 설정함
                                            # 도메인 ID내에서 inst_id는 중복되면 안됨
 
3. WAS 별 제니퍼 에이전트 설정
 
1) WebLogic 설정
 
WebLogic의 인스턴스 기동 쉘에서 JAVA option 설정하는 부분에 아래 2개 옵션을 설정하면 됩니다.
 
-Djennifer.config=/home/jennifer5/agent.java/conf/dpdl에이전트명.conf  (예, WL11.conf, WL12.conf)      
-javaagent:/home/jennifer5/agent.java/jennifer.jar
제니퍼 에이전트 설치디렉토리/conf에 WebLogic 인스턴스별로  conf 파일을 각각 작성하고, inst_id는 유일하게 설정 또는 자동으로 설정되도록해야 합니다.
 
설정 후, WebLogic 인스턴스를 재기동하면 됩니다.
 
1) JEUS 설정

JEUS 의 $JEUS_HOME/config/$hostname/JEUSMain.xml 파일에서 <command-option></command-option> 항목에 두 옵션을 추가한다.

 
<command-option>
  -Djennifer.config=/home/jennifer5/agent.java/conf/에이전트명.conf (예, JS11.conf, JS12.conf)
  -javaagent:/home/jennifer5/agent.java/jennifer.jar 
</command-option>

 

 
제니퍼 에이전트 설치디렉토리/conf에 JEUS 인스턴스별로  conf 파일을 각각 작성하고, inst_id는 유일하게 설정 또는 자동으로 설정되도록해야 합니다.
 
설정 후, JEUS 인스턴스를 재기동하면 됩니다.