네이버에서 개발한 시스템 모니터링 도구. 분산된 애플리케이션의 메세지를 추적하고 코드 수준의 가시성을 제공해 문제 발생 지점과 병목 구간을 쉽게 파악할 수 있게 해준다.

특징
- 요청, 응답 차트 제공
- 메소드 콜 스택 추적 기능 제공
- 바이트코드 단위로 동작
- agent와 같이 jar를 실행하면 별도의 코드베이스 수정 없이 바로 모니터링 기능을 추가할 수 있음
- 수집된 데이터를 HBase에 저장
- 코드 수준의 정보를 추적하기 때문에 트래픽이 많아지면 저장하는 데이터 양 급증
- 하둡 기반의 분산 데이터베이스인 HBase를 사용
- 타겟 서버의 시간 별 하드웨어 상태 모니터링 가능
아키텍처

- PinPoint Agent
- 타겟 애플리케이션의 모니터링 정보를 주집하여 collector에 전달
- 애플리케이션의 jar 파일과 같이 실행되어야함
- Pinpoint Collector
- agent에게 전달받은 데이터를 hbase에 저장
- Pinpoint Web
- Hbase에 저장된 데이터를 기반으로 모니터링 정보를 web ui형태로 제공
사용 사례
가이드 문서
접속 주소
http://49.50.172.148:10090
Pinpoint-Agent 설치 방법
- AWS 서버 접속
- pinpoint-agent.tar 다운
wget https://github.com/pinpoint-apm/pinpoint/releases/download/v2.4.0/pinpoint-agent-2.4.0.tar.gz
- 다운받은 파일 압축 해제
tar xvfz pinpoint-agent-2.4.0.tar.gz
- 압축 해제된 디렉터리로 이동
- pinpoint-root.config 파일 수정

49.50.172.148로 수정!
- 앱 서버 실행시 pinpoint agent랑 같이 실행하기(실행 스크립트에 추가?)
java -jar -javaagent:pinpoint-bootstrap-2.4.0.jar -Dpinpoint.agentId=rg -Dpinpoint.applicationName=rg_server -Dpinpoint.config=pinpoint-root.config -Dspring.profiles.active=prod {앱 서버.jar}
Dspring.profiles.active의 경우 필요에 따라 빼거나 수정하시면 됩니다. 배포할땐 prod 프로필로 실행된다하여 일단 prod로 적었습니다.
- 모니터링 서버 접속하여 연동이 잘 되었는지 확인
- http://49.50.172.148:10090
- 로그인 필요할경우
- 계정 : forest
- 비밀번호 : 12345678
- 로그인 하고 메인화면뜰때까지 살짝 시간 걸려요!