Pinpoint is an open source APM (Application Performance Management) tool for large-scale distributed systems written in Java.
Java JavaScript HTML CSS Shell Batchfile Other
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
.github Apply stale bot Jul 13, 2018
.mvn/wrapper [#4069] Update maven wrapper version Apr 30, 2018
agent-it [#noissue] upgrade maven plugin Aug 13, 2018
agent [#noissue] refactor tools Aug 14, 2018
annotations [release] prepare for development version 1.8.0-SNAPSHOT Aug 13, 2018
bootstrap-core-optional [release] prepare for development version 1.8.0-SNAPSHOT Aug 13, 2018
bootstrap-core [release] prepare for development version 1.8.0-SNAPSHOT Aug 13, 2018
bootstrap-java9 [#noissue] upgrade maven plugin Aug 13, 2018
bootstrap [release] prepare for development version 1.8.0-SNAPSHOT Aug 13, 2018
collector [release] prepare for development version 1.8.0-SNAPSHOT Aug 13, 2018
commons-hbase [release] prepare for development version 1.8.0-SNAPSHOT Aug 13, 2018
commons-server [release] prepare for development version 1.8.0-SNAPSHOT Aug 13, 2018
commons [release] prepare for development version 1.8.0-SNAPSHOT Aug 13, 2018
doc [#noissue] change document titles Aug 17, 2018
flink [#noissue] upgrade maven plugin Aug 13, 2018
hbase [release] prepare for development version 1.8.0-SNAPSHOT Aug 13, 2018
plugins [#noissue] upgrade maven plugin Aug 13, 2018
profiler-optional [#noissue] upgrade maven plugin Aug 13, 2018
profiler-test [release] prepare for development version 1.8.0-SNAPSHOT Aug 13, 2018
profiler [release] prepare for development version 1.8.0-SNAPSHOT Aug 13, 2018
quickstart [#noissue] upgrade maven plugin Aug 13, 2018
rpc [#noissue] upgrade maven plugin Aug 13, 2018
test [release] prepare for development version 1.8.0-SNAPSHOT Aug 13, 2018
thrift [release] prepare for development version 1.8.0-SNAPSHOT Aug 13, 2018
tools [#noissue] refactor tools Aug 14, 2018
web [#noissue] upgrade maven plugin Aug 13, 2018
.gitignore Add gitignore to VSCode path. Dec 19, 2016
.travis.yml [#4371] travis update Aug 12, 2018
CONTRIBUTING.md Fix text in CONTRIBUTING.md Dec 19, 2016
ISSUE_TEMPLATE.md [#noissue] update issue template May 18, 2018
LICENSE Update LICENSE Dec 27, 2014
NOTICE fixed typo in NOTICE. Mar 16, 2017
README.md Update latest release to 1.8.0-RC1 Aug 13, 2018
checkstyle-UTF8(ver0.6).xml Merge branch 'master' of http://yobi.navercorp.com/pinpoint/pinpoint Sep 24, 2014
checkstyle-suppressions.xml Merge branch 'master' of http://yobi.navercorp.com/pinpoint/pinpoint Sep 24, 2014
filefilter.txt #2612 remove thirdparty google guava module Feb 14, 2017
mvnw [#4069] Update maven wrapper version Apr 30, 2018
mvnw.cmd [#4069] Update maven wrapper version Apr 30, 2018
pom.xml [#noissue] Rollback maven-pmd-plugin version Aug 14, 2018
spotbugs-exclude.xml [#4081] update plugin for jdk9 Apr 30, 2018

README.md

Pinpoint

Build Status codecov

Visit our official web site for more information and Latest updates on Pinpoint

Latest Release (2018/08/13)

We're happy to announce the release of Pinpoint v1.8.0-RC1. Please check the release note at (https://github.com/naver/pinpoint/releases/tag/1.8.0-RC1).

The current stable version is v1.7.3.

Pinpoint is an APM (Application Performance Management) tool for large-scale distributed systems written in Java. Inspired by Dapper, Pinpoint provides a solution to help analyze the overall structure of the system and how components within them are interconnected by tracing transactions across distributed applications.

You should definitely check Pinpoint out If you want to

  • understand your application topology at a glance
  • monitor your application in Real-Time
  • gain code-level visibility to every transaction
  • install APM Agents without changing a single line of code
  • have minimal impact on the performance (approximately 3% increase in resource usage)

Getting Started

Overview

Services nowadays often consist of many different components, communicating amongst themselves as well as making API calls to external services. How each and every transaction gets executed is often left as a blackbox. Pinpoint traces transaction flows between these components and provides a clear view to identify problem areas and potential bottlenecks.
For a more intimate guide, please check out our Introduction to Pinpoint video clip.

  • ServerMap - Understand the topology of any distributed systems by visualizing how their components are interconnected. Clicking on a node reveals details about the component, such as its current status, and transaction count.

  • Realtime Active Thread Chart - Monitor active threads inside applications in real-time.

  • Request/Response Scatter Chart - Visualize request count and response patterns over time to identify potential problems. Transactions can be selected for additional detail by dragging over the chart.

    Server Map

  • CallStack - Gain code-level visibility to every transaction in a distributed environment, identifying bottlenecks and points of failure in a single view.

    Call Stack

  • Inspector - View additional details on the application such as CPU usage, Memory/Garbage Collection, TPS, and JVM arguments.

    Inspector

Supported Modules

  • 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

Compatibility

Java version required to run Pinpoint:

Pinpoint Version Agent Collector Web
1.0.x 6-8 6+ 6+
1.1.x 6-8 7+ 7+
1.5.x 6-8 7+ 7+
1.6.x 6-8 7+ 7+
1.7.x 6-8 8+ 8+
1.8.x 6-8
9+(Experimental)
8+ 8+

HBase compatibility table:

Pinpoint Version HBase 0.94.x HBase 0.98.x HBase 1.0.x HBase 1.1.x HBase 1.2.x
1.0.x yes no no no no
1.1.x no not tested yes not tested not tested
1.5.x no not tested yes not tested not tested
1.6.x no not tested not tested not tested yes
1.7.x no not tested not tested not tested yes
1.8.x no not tested not tested not tested yes

Agent - Collector compatibility table:

Agent Version Collector 1.0.x Collector 1.1.x Collector 1.5.x Collector 1.6.x Collector 1.7.x Collector 1.8.x
1.0.x yes yes yes yes yes yes
1.1.x not tested yes yes yes yes yes
1.5.x no no yes yes yes yes
1.6.x no no not tested yes yes yes
1.7.x no no no no yes yes
1.8.x no no no no no yes

Flink compatibility table:

Pinpoint Version flink 1.3.X flink 1.4.X
1.7.x yes no

User Group

For Q/A and discussion here.

License

Pinpoint is licensed under the Apache License, Version 2.0. See LICENSE for full license text.

Copyright 2018 NAVER Corp.

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.