본문 바로가기
개발/SpringBoot

SpringBoot Scouter APM 구성

by 궁즉변 변즉통 통즉구 2021. 11. 30.
반응형

Scouter

오픈소스 APM (Application Performance Monitoring) Tool로써 어플리케이션 및 Host OS 자원에 대한 실시간 모니터링 기능을 제공

  • APM : Application performance montoring / application performance management
  • 모니터링 대상 (전용 agent)
    • Java Agent : Web application (on Tomcat, JBoss, Resin ...), Standalone java application
    • Host Agent : Linux, Windows, Unix
  • 모니터링 대상 (Telegraf support)
    • Redis, nginX, apache httpd, haproxy, Kafka, MySQL, MongoDB, RabbitMQ, ElasticSearch, Kube, Mesos ...
  • 모니터링 대상 (Zipkin-Scouter storage)

사이트: 

Scouter 구성

  • Server(Collector): Scouter Agent의 성능 지표 저장
  • Agent: OS 및 어플리케이션의 성능 지표를 수집하여 Server로 전송
  • Client(Viewer): Server가 수집한 정보를 시각화
  • WebApi: 지표들을 Http Api 형태로 제공

 

Server(Collector) 구성

다운로드

$ wget https://github.com/scouter-project/scouter/releases/download/v2.15.0/scouter-all-2.15.0.tar.gz
$ tar xzvf scouter-all-2.15.0.tar.gz
$ cd scouter/sever

- Requirement: JDK 1.8 이상

- /souter/server/startup.sh 파일 실행

- 로그파일 경로: /souter/server/logs

- TCP서비스 Port: 6100

- UDP수신 Port: 6100

 

 

OS(Host) Agent 구성

다운로드

$ wget https://github.com/scouter-project/scouter/releases/download/v2.15.0/scouter-all-2.15.0.tar.gz
$ tar xzvf scouter-all-2.15.0.tar.gz
$ cd scouter/agent.host

- /souter/agent.host/conf/scouter.conf 파일 설정.  
상단 3개 항목 Server Ip, Server Port 정보 주석 해제

 

- Requirement: JDK 1.6 이상
- /souter/agent.host/host.sh 실행

 
* 실행 후 'org.hyperic.sigar.SigarException: no libsigar-universal64-macosx.dylib in java.library.path' 에러떠서 스크립트 아래와 같이 수정 후 다시 실행
nohup java -Djava.library.path=./lib/ -classpath ./scouter.host.jar scouter.boot.Boot ./lib > nohup.out &

 

Java(JVM) Agent 구성

- Requirement: JDK 1.6 이상
- /souter/agent.java/conf/scouter.conf 파일 설정
- 상단 3개 항목 Server Ip, Server Port 정보 주석 해제

외장 Tomcat 사용 시

- ${TOMCAT_HOST}/bin/catalina.sh or startup.sh 파일 설정

SCOUTER_AGENT_DIR=/home/ec2-user/scouter/agent.java
JAVA_OPTS=" ${JAVA_OPTS} -javaagent:${SCOUTER_AGENT_DIR}/scouter.agent.jar"
JAVA_OPTS=" ${JAVA_OPTS} -Dscouter.config=${SCOUTER_AGENT_DIR}/conf/scouter.conf"
JAVA_OPTS=" ${JAVA_OPTS} -Dobj_name=TEST-WAS-01"

 

 

임베디드 Tomcat 사용 시

$ java -javaagent:/home/ec2-user/scouter/agent.java/scouter.agent.jar \
-Dscouter.config=/home/ec2-user/scouter/agent.java/conf/scouter.conf \
-Dobj_name=TEST-WAS-01 \
-jar spring-boot-0.0.1-SNAPSHOT.jar

 

Client(Viewer) 구성

- https://github.com/scouter-project/scouter/releases Client 프로그램 다운로드 및 실행

- Default 계정 admin/admin 접속

* XLog : Http 요청부터 응답까지를 한 단위로하여 처리시간 별 그래프 출력(요청 별 응답시간 확인 가능)

 

Scouter 사용법

지표 항목 추가

- Collector > OSX 메뉴 : OS 관련 항목

- Collector > Tomcat : Tomcat 관련 항목

 

Obejct 메뉴 

- Performance Counter : 시계열(시간변화) 관련 성능 정보 확인

- Object Request: 특정 시점에 특정 Object들이 어떤 정보를 가지고 있는지 확인

 

 

반응형

댓글