PinPoint Monitoring Microservices

Application Performance Management (APM) refers to the monitoring and optimization of key business applications of the enterprise, improving the reliability and quality of enterprise applications, ensuring that users receive good services, and reducing the overall IT operation and maintenance Costs bring more commercial benefits to enterprises.

Pinpoint is an APM (application performance management) tool suitable for large distributed systems written in Java/PHP. Try to be simple and efficient in use. By installing the agent at startup, there is no need to modify even one line of code to minimize performance loss (3%).

Advantage

  1. Distributed transaction tracking, tracking messages across distributed applications;
  2. Automatically detect the application topology to help you figure out the structure of the application;
  3. Horizontal expansion to support large-scale server clusters;
  4. Provide code-level visibility to easily locate failure points and bottlenecks;
  5. Use bytecode enhancement technology to add new functions without modifying the code.

This document is suitable for enterprise development, testing, and operation and maintenance personnel who need to implement microservice monitoring and link tracking through PinPoint.

ComponentComponent Function
Pinpoint-CollectorCollect various performance data
Pinpoint-AgentThe probe is associated with an application server (such as tomcat) and deployed on the same server
HBase StorageStore the collected data in HBase
Pinpoint-WebThe collected data layer is now displayed on the web

This document is suitable for enterprise development, testing, and operation and maintenance personnel who need to implement microservice monitoring and link tracking through PinPoint.

The scenario preset in this document is to learn how to deploy PinPoint in the Kato environment through demonstration use cases, monitor the test business, and track its links.

Prerequisites

It must be a Java project built based on source code, and pinpoint-agent will be integrated by default.

Steps

You can deploy PinPoint to your Kato environment through one-click deployment in the official application market.

Install Pinpoint

  1. Go to Team View > Add New > Create a component based on the application market.

  2. Search pinpoint> install in the Kato community open source store, install the latest version 2.1.0.

Configure Websocket

PinPoint supports real-time display of link tracking data, which requires the access address of pinpoint to support the websocket protocol.

Find the domain name of pinpoint-web 8080 port in Gateway, and click Parameter Settings to open websocket support.

Running Result

Use the Official DEMO to Demonstrate Pinpoint-agent

  1. Refer to Quick Start to install components created based on source code

  2. Enter the component view created in the first step> Dependency> Add the dependent component name Pinpoint-collector.

  3. Go to Component Monitoring> Link Tracking> Enable.

  4. Update components.

Show Results

Visit Pinpoint-web, you will see the application name of the previous step. At this point, complete.

Spring Cloud Pig effect display:

Pinpoint Instructions

Pinpoint version2.1.0
applicationNameDefault value component application name (note that Chinese names cannot be used)
If you don’t want to change the component name, you can modify the component environment variable ES_TRACE_APP_NAME to change the applicationName
agentIdValue POD variable HOSTNAME

Common Problems

pinpoint-hbase component has been initialized or unhealthy

Try to change the storage of the pinpoint-hbase component to local storage. If you still can’t get up, it is recommended to replace the hard disk of 2008.

Dependency has been added, and it is also turned on in Monitoring > Link Tracking, why the Pinpoint web page APP_LIST does not have my application

Please check if the components have been updated. If the component is updated, please check the log to see if there is pinpoint-agent startup log.

After using for a while Pinpoint suddenly cannot be accessed

In Scaling > Check the memory usage of the instance, try to increase the memory, the default is 1G.

Why is there no default integration in my source code build pinpoint-agent

Please update the builder image:

#Pull the latest builder image
docker pull registry.gitlab.com/gridworkz/kato/kato-builder:5.2.0
#Re-tag and push to the default mirror warehouse
docker tag registry.gitlab.com/gridworkz/kato/kato-builder:5.2.0 gridworkz.me/builder:latest
docker push gridworkz.me/builder:latest
# Newly installed do not need to update the mirror.