- 인쇄
- PDF
Pinpoint 시작 가이드
- 인쇄
- PDF
Pinpoint 주요 화면 소개
Pinpoint 서비스의 주요 기능 및 대시보드를 소개하고, 기능을 간략하게 설명합니다. (Pinpoint 소개 영상)
Pinpoint Main 대시보드
아래와 같이 크게 3가지 요소로 구성되어 있습니다.
① Server Map
② Realtime Active Thread Chart
③ Request/Response Scatter Chart
Pinpoint CallStack
아래와 같이 코드 레벨의 트랜잭션 단위 정보 확인이 가능합니다.
Pinpoint Inspector
아래와 같이 CPU Usage, Memory/Garbage Collection과 같은 부가 정보에 대한 Chart 확인이 가능합니다.
Pinpoint Cheat Sheet(사용 및 운영)
Pinpoint 서비스 사용 및 운영 시 팁과 Trouble shooting guide를 간략하게 설명하고, 지속적으로 업데이트할 예정입니다.
Pinpoint Agent 설치 및 적용
Pinpoint Agent는 각 사용자가 해당 서비스에 직접 설치하고 설정해야 합니다. Tomcat Application Service에 설치하고 설정하는 방법은 다음과 같습니다.
Pinpoint Agent 바이너리를 다운로드 및 설치합니다(Pinpoint Releases 바로가기).
Agent 설치 디렉터리는 사용자가 직접 선택하여 설치 및 저장합니다.Tomcat Application Service에 Agent를 설치하고,
$CATALINA_HOME/bin/catalina.sh
파일을 다음과 같이 수정하고 저장합니다.$AGENT_PATH={PINPOINT_AGENT_INSTALLATION_DIRECTORY} CATALINA_OPTS="$CATALINA_OPTS -javaagent:$AGENT_PATH/pinpoint-bootstrap-$VERSION.jar" CATALINA_OPTS="$CATALINA_OPTS -Dpinpoint.agentId=$AGENT_ID" CATALINA_OPTS="$CATALINA_OPTS -Dpinpoint.applicationName=$APPLICATION_NAME"
각 설정 항목에 대한 변수는 아래와 같습니다.
$AGENT_PATH
: Pinpoint Agent가 설치된 디렉터리를 지정합니다.pinpoint-bootstrap-$VERSION.jar
: 2018년 8월 5일 현재 1.7.3 버전이 최종 릴리즈 버전입니다.$AGENT_ID
: Pinpoint Web Dashboard에서 각 Application을 구분하기 위한 Unique ID를 설정합니다.$APPLICATION_NAME
: Pinpoint Web Dashboard에서 각 Application Group을 구분하기 위한 ID를 설정합니다.
${AGENT_PATH}/pinpoint.config
파일에서profiler.collector.ip=xxx.xxx.xxx.xxx
에 Pinpoint Collector 서버 주소를 입력합니다.$CATALINA_HOME/bin/startup.sh
을 실행하면, Pinpoint Agent에서 값을 수집하여 Pinpoint Collector(Port: 9994)로 전송합니다.
위와 같이 설정 완료 및 정상적으로 Application이 실행되었다면, Pinpoint Web에서 Application ID/Name으로 추가된 Agent 정보를 확인할 수 있습니다.
Pinpoint Agent Supported Modules(최종 업데이트: 2018년 04월 01일)
Pinpoint Agent에서 성능 수집을 지원하는 Application 및 Version 정보는 아래와 같습니다.
아래의 목록은 지속적으로 업데이트 예정입니다.
- JDK 6+
- Tomcat 6/7/8, Jetty 8/9, JBoss EAP 6, Resin 4, Websphere 6/7/8, Vertx 3.3/3.4/3.5
- Spring, Spring Boot (Embedded Tomcat, Jetty)
- Apache HTTP Client 3.x/4.x, JDK HttpConnector, GoogleHttpClient, OkHttpClient, NingAsyncHttpClient
- Thrift Client, Thrift Service, DUBBO PROVIDER, DUBBO CONSUMER
- ActiveMQ, RabbitMQ
- MySQL, Oracle, MSSQL, CUBRID,POSTGRESQL, MARIA
- Arcus, Memcached, Redis, CASSANDRA
- iBATIS, MyBatis
- DBCP, DBCP2, HIKARICP
- gson, Jackson, JSON Lib
- log4j, Logback
Pinpoint Components Log Level 조정
Pinpoint 각 컴포넌트의 로그 레벨을 조정하기 위해서는 log4j.xml
파일을 수정해야 합니다.
- Pinpoint Collector : $PINPOINT_HOME/pinpoint-collector/webapps/pinpoint-collector-1.7.3/WEB-INF/classes/log4j.xml
- Pinpoint Web : $PINPOINT_HOME/pinpoint-web/webapps/pinpoint-web-1.7.3/WEB-INF/classes/log4j.xml
(...중략)
<logger name="com.navercorp.pinpoint" additivity="false">
<level value="WARN"/>
<appender-ref ref="console"/>
</logger>
<logger name="com.navercorp.pinpoint.web.filter" additivity="false">
<level value="WARN"/>
<appender-ref ref="console"/>
</logger>
<logger name="com.navercorp.pinpoint.web.controller" additivity="false">
<level value="WARN"/>
<appender-ref ref="console"/>
</logger>
<logger name="com.navercorp.pinpoint.web.applicationmap" additivity="false">
<level value="WARN"/>
<appender-ref ref="console"/>
</logger>
<logger name="com.navercorp.pinpoint.web.calltree.server" additivity="false">
<level value="WARN"/>
<appender-ref ref="console"/>
</logger>
<logger name="com.navercorp.pinpoint.web.mapper" additivity="false">
<level value="WARN"/>
<appender-ref ref="console"/>
</logger>
<logger name="com.navercorp.pinpoint.web.service" additivity="false">
<level value="WARN"/>
<appender-ref ref="console"/>
</logger>
(...중략)
Pinpoint Web Session Timeout 설정 방법
Pinpoint Web Session Timeout 시간은 현재 30분
으로 설정되어 있습니다.
아래와 같이 ${PINPOINT_HOME}/pinpoint-web/conf/web.xml
파일의 값을 수정 후 Pinpoint Web 서비스를 재시작하면 적용됩니다.
(...중략)
<session-config>
<session-timeout>30</session-timeout>
</session-config>
(...중략)
Pinpoint Components Log File 초기화 방법
Pinpoint 각 컴포넌트의 로그는 Tomcat의 catalina.out
파일에 저장되며, 아래와 같이 Online Initialization이 가능합니다. 다음은 Pinpoint Web 컴포넌트의 로그를 초기화하는 예입니다.
shell> cat /dev/null > $PINPOINT_HOME/pinpoint-web/logs/catalina.out
Pinpoint VM 서버의 상세 모니터링 가이드
Pinpoint 서비스가 설치된 VM 서버에 대한 모니터링은 네이버 클라우드 플랫폼 모니터링 서비스를 통해 확인할 수 있습니다.
HBase 설치 및 운영 가이드
HBase 컴포넌트는 Apache HBase 프로젝트의 1.2.6.1 Binary 버전을 수정없이 사용하고 있으며, 해당 가이드는 아래와 같이 확인할 수 있습니다.
Pinpoint Web Application 정보 삭제하기
Pinpoint Web에서 사용하지 않는 Application 및 Agent 정보를 아래와 같은 방법으로 삭제할 수 있습니다.
$PASSWORD
의 경우 $PINPOINT_HOME/pinpoint-web/webapps/pinpoint-web-1.7.3/WEB-INF/classes/pinpoint-web.properties
파일의 admin.password=xxxx
를 참조합니다.
- Application Name 삭제하기
/admin/removeApplicationName.pinpoint?applicationName=$APPLICATION_NAME&password=$PASSWORD
- Agent ID 삭제하기
/admin/removeAgentId.pinpoint?applicationName=$APPLICATION_NAME&agentId=$AGENT_ID&password=$PASSWORD
Pinpoint FAQ
네이버 클라우드 플랫폼 Pinpoint의 사용자 가이드 외에 보다 많은 정보를 확인하기 위해서는 아래와 같이 공식 사이트의 FAQ 글을 참조할 수 있습니다.
Pinpoint 오픈소스 가이드 바로가기
Pinpoint 오픈 소스 버전에 대한 Repository, Technology, 기타 유용한 글에 대한 바로가기 링크를 제공합니다.