Creating Pinpoint
    • PDF

    Creating Pinpoint

    • PDF

    Article Summary

    Available in Classic and VPC

    Before use

    Q. What is Pinpoint?

    • As a platform service that provides continuous performance analysis for Java distributed service and system, Pinpoint diagnoses the performance and tracks the probability of making errors.
    • This service provides features of tracking and analysis for the architecture service which is composed of "N"-tier SOA (Service Oriented Architecture) and Micro-Service.
    • In addition, it uses transaction analysis of distributed applications, Topology Detection, and Bytecode Instrumentation to diagnose performance.
    • "Pinpoint" uses an open source called Pinpoint developed and released by NAVER Corporation.

    Q. What are the advantages of using Pinpoint?

    • Pinpoint enables you to diagnose the performance of Java applications and track errors without code modification.
    • This service supports various Java Agent plugins and offers sustainable, expandable features.
    • It treats distribution environments of complex services as a single transaction to track, which can provide you with data that is critical to root cause analysis.

    Q. How do I create a Pinpoint server?

    • You can create it by selecting a server image from Compute > Server on the Console.
    • Select the server specification you want and add storage as needed.
    • You will be charged based on the monthly and hourly plans, and you can set up your access environment after you create a server.
    • To use a Pinpoint web service, it is required to request a pubic IP address and add port "10090" in the ACG setting.
    • After connecting to the Console, you can easily create a server by following the steps.

    Q. I cannot access the Pinpoint Web.

    • To use a Pinpoint web service, it is required to request a public IP address and add port "10090" in the ACG setting. (Please refer to "Set access environment.")
    • If you continue to fail even if you follow the instructions above, try restarting the process by using the restart command in the terminal. (Please refer to "Manage Pinpoint process.")

    Q. Where do I find the installation directory of Pinpoint?

    • You can find it in the “/root/pinpoint” directory.
    • In the installation directory, you can also find pinpoint-collector, pinpoint-web, hbase-1.2.6.1, etc.
    • It is recommended that you back up the installation directory to protect you in the event of data loss.

    Q. How do I reset the Pinpoint Admin password?

    • Follow the steps below to reset the password.
      1. Access the server.
      2. Edit the [Pinpoint-Web installation directory]/webapps/pinpoint-web-1.7.3/WEB-INF/web.xml file.
        • Default installation directory of the Pinpoint Web: /root/pinpoint/pinpoint-web
      3. Edit the values of username and password in <init-param> of the LoginCheck filter item.
        • <param-name>username</param-name>, <param-name>password</param-name>
      4. Restart the Pinpoint Web service.
        • $ /root/pinpoint/pinpoint-web/bin/shutdown.sh
        • $ /root/pinpoint/pinpoint-web/bin/startup.sh

    Q. What should I keep in mind while using the Pinpoint Web service?

    • A Pinpoint Web service uses the HTTP protocol by default.
    • If you want to make the Pinpoint Web service more safe and secure, use the HTTPS protocol.
    • Create the SSL certificate and Web Service Domain before you start using Pinpoint.

    Pinpoint overview

    As a platform service that analyzes/diagnoses/tracks the performance of distributed service and system, it provides features of tracking and analysis for the architecture service consisting of "N"-tier SOA (Service Oriented Architecture) and Micro-Service. In addition, this service uses transaction analysis of distributed applications, Topology Detection, and Bytecode Instrumentation to diagnose performance.

    Create Pinpoint server

    Follow the steps below to create a Pinpoint server.

    Step 1. Connect to Console

    Connect to Console. Connect to the Console and click Compute > Server.

    pinpoint-1-1-02_en(1).png

    ① To create a server, click [Create server].

    Step 2. Select server image

    Select a Pinpoint server image to create a server.

    pinpoint-1-1-03_en(1).png

    ① Select a Pinpoint server image.

    ② Check the popup window for the instructions (to request a public IP address and ACG to use Pinpoint and confirm the default password).

    ③ Click [OK] to close the popup window and go to the server creation page.

    Step 3. Set server

    Select a storage type, server type, pricing plan, and zone, and enter a server name.

    pinpoint-1-1-04_en.png

    ① Select a zone.

    • A Pinpoint service is supported across all regions.

    ② Select a storage type to use as boot storage.

    ③ Select the server type you want.

    • Some server specifications may not be supported depending on the boot disk type.
    • Select a server type according to the capacity you want.

    ④ You can select either the monthly or hourly pricing plan.

    ⑤ Enter a server name.

    • The name is for users to distinguish the server, and it cannot be used in duplicate.

    ⑥ Click [Next].

    Step 4. Set login key

    If you have an existing login key, select Use an existing login key. Otherwise, create a new login key according to the following procedure.

    pinpoint-1-1-05_en.png

    ① Select Create a new login key.

    ② Enter an login key name.

    ③ Click [Create & save login key] to save the login key file to your local PC.

    • Issue a new login key.
    • After saving it, please keep the login key in a safe place on your PC.
    • The login key is used to obtain an initial administrator password.

    ④ Click [Next].

    Step 5. Set ACG

    You can set a firewall by either using an existing ACG or creating a new one.

    Use an existing ACG

    First, this describes how to set a firewall using an existing ACG.

    pinpoint-1-1-06_en.png

    ① You must select ACG. Select one of the existing ACGs including the default ‘ncloud-default-acg’.

    • You can select up to 5 ACGs of your own.
    • You must select an ACG to activate [Next] button so that you can proceed with the setting.

    ② If you want to create and configure a new ACG besides your existing one, select Create a New ACG.

    ③ Click [Next].

    Create a new ACG

    The following shows how to set a firewall by creating a new ACG.

    pinpoint-1-1-07_en.png

    ① In Create a New ACG, click [Create ACG] button.

    ② Enter an ACG name.

    ③ In ACG setting, enter a protocol, an access source, and an allowed port to create.

    • Protocol: Select from TCP, UDP, and ICMP.
    • Access source: Enter an IP address or ACG name.
    • Allowed port: Specify a single port or range.
    • For a terminal connection, the rule for SSH “TCP/22” must be set in ACG of a server to be connected. The following rule must be additionally set to use Pinpoint. To add the rules, list a protocol, an access source, and an allowed port, and click [Add].
    ProtocolIP rangePortDescription
    TCP(Required IP range)22Pinpoint Server SSH
    TCP(Required IP range)10090Pinpoint Web Port
    TCP(Required IP range)8090Pinpoint Collector Web Port
    TCP(Required IP range)9994Pinpoint Collector TCP
    TCP(Required IP range)9995Pinpoint Collector Status TCP
    TCP(Required IP range)9996Pinpoint Collector Span TCP
    UDP(Required IP range)9994Pinpoint Collector UDP
    UDP(Required IP range)9995Pinpoint Collector Status UDP
    UDP(Required IP range)9996Pinpoint Collector Span UDP
    • Example for adding Pinpoint ACG rules

    pinpoint-1-1-07-1_en.png

    ④ If the ports above are all added, click [Create].

    Step 6. Confirm

    Confirm the settings.

    pinpoint-1-1-08_en.png

    ① Make sure that the server image, server, login key, and ACG are set properly.

    ② After the final confirmation, click [Create server].

    • This may take several minutes or longer for the server to be created.

    Check in the server list

    Check if the created server is in the list.
    pinpoint-1-1-09_en.png

    ① The server you have created will appear in the list.

    ② Wait until the server is created, the Pinpoint package is installed, and the server status becomes Running.

    Set access environment

    Request public IP address

    To use Pinpoint, you must use a public IP address to access the server, and you will be charged additionally for using a public IP address.
    pinpoint-1-1-11_en.png

    ① Select PUBLIC IP from the left menu. Click [Create Public IP] to get a public IP address assigned.

    ② From Select Server, select a Pinpoint server to assign the public IP address.

    ③ Click [OK]. Confirm the server name and click [OK] button again.

    Set port forwarding

    To connect to a server via a terminal program (such as Putty), you must set port forwarding.

    pinpoint-1-1-12_en.png

    ① Select Server from the left menu. To connect to the server, click [Set Port Forwarding].

    ② Set an external port number in the Set port forwarding window. The range of external port numbers is between 1024 and 65,534. It cannot be used for service purposes other than the feature to connect to a server.(The internal port number is set to 22.)

    ③ Click [Add] to add the setting to the bottom and select [Edit] or [Delete] to edit or delete the setting.

    ④ Click [Apply] for SSH connection to the configured external port using a terminal program.

    Set ACG

    Add an SSH “TCP/22” rule for terminal connections and a “TCP/18888” rule for the Pinpoint service to ACG.

    If you have already added the rules when creating a server, you do not need to perform ACG setting in this step.

    pinpoint-1-1-13-1_en.png

    ① Select ACG from the left menu.

    ② Select the ACG that you chose when creating a server and click [Create ACG] at the top.

    ③ Enter an ACG name.

    ④ When you’re finished setting, click [Create].

    • If the Pinpoint ACG rules are already added as shown below, you do not need to perform additional tasks.

    pinpoint-1-1-13-2_en.png

    ① Select the created ACG.

    ② Click [Set ACG] at the top.

    ③ In ACG rule setting, enter a protocol, an access source, and an allowed port to create.

    • Protocol: Select from TCP, UDP, and ICMP.

    • Access source: Enter an IP address or ACG name.

    • Allowed port: Specify a single port or range.

    • For a terminal connection, the rule for SSH “TCP/22” must be set in ACG of a server to be connected.

    • To add the rules, list a protocol, an access source, and an allowed port and click [Add].

    ④ When you’re finished setting, click [Apply].

    Get server admin password

    To connect to a server via terminal program (such as Putty), you need to know the administrator password.

    pinpoint-1-1-14_en.png

    ① Select Server from the left menu.

    ② Select a server, and from Manage Servers, click Get Admin Password.

    ③ Click [Drop files here or click to upload] to attach the login key file (.pem) saved on your PC when creating the server.

    ④ After attaching it, click [Get Admin Password] to get a password to use when first logging in to the server via terminal program.

    • It is recommended to change the password to one that the administrator can remember after connecting to the server.

    How to run Pinpoint using a terminal

    You need to connect to your server via a terminal program (such as Putty) to manage the Pinpoint process.

    Connect to the server via a terminal

    pinpoint-1-1-21_en.png

    ① Run a terminal program (such as Putty).

    ② Enter the values of “Public IP” and “External Port” confirmed in your server list or from the details of the server, and click [Open] to connect to the server.

    • Get a public IP: Go to Console > Server > Server list and select a server. You can find a "public IP" for port forwarding in Show.
    • Get an external port number: Go to Console > Server > Server list and select a server. You can find an "external port" for port forwarding in Show.

    ③ Enter the user information and password to log in.

    • login as: root
    • password: The administrator password identified above.

    ④ Please change the root account’s password to one you can easily remember after first logging in.
    Enter the passwd root command to enter a new password.

    Initialize/Stop Pinpoint server

    Execute the pinpoint-init.sh file provided with the Pinpoint server to start Pinpoint Components server.

    • How to find the location of the pinpoint-init.sh file

      shell> PINPOINT_HOME=/root/pinpoint
      shell> ls -al $PINPOINT_HOME
      

      pinpoint-1-1-18_en.png

    • Initialize: Execute pinpoint-init.sh.

      shell> PINPOINT_HOME=/root/pinpoint
      shell> $PINPOINT_HOME/pinpoint-init.sh
      

      pinpoint-1-1-19_en.png

    • Stop: Execute pinpoint-stop.sh.

      shell> PINPOINT_HOME=/root/pinpoint
      shell> $PINPOINT_HOME/pinpoint-stop.sh
      

      pinpoint-1-1-20_en.png

    • Restart: Execute pinpoint-restart.sh.
      Stop and restart Pinpoint Component.

      shell> PINPOINT_HOME=/root/pinpoint
      shell> $PINPOINT_HOME/pinpoint-restart.sh
      

      pinpoint-1-1-20-1_en.png

    • Start: Execute pinpoint-start.sh.
      Start Pinpoint Component.

      shell> PINPOINT_HOME=/root/pinpoint
      shell> $PINPOINT_HOME/pinpoint-start.sh
      

      pinpoint-1-1-20-2_en.png

    • View Pinpoint status: Execute pinpoint-status.sh.
      View the Pinpoint Component status.

      shell> PINPOINT_HOME=/root/pinpoint
      shell> $PINPOINT_HOME/pinpoint-status.sh
      

      pinpoint-1-1-20-3_en.png

    Note

    If you execute pinpoint-stop.sh or pinpoint-restart.sh when the Pinpoint Components status is marked as Stop, a Tomcat error message as shown below may appear.

     shell> PINPOINT_HOME=/root/pinpoint
     shell> $PINPOINT_HOME/pinpoint-status.sh
     shell> $PINPOINT_HOME/pinpoint-stop.sh
    

    pinpoint-1-1-20-3-2_en.png

    Manage Pinpoint process

    Use commands below to manage the Pinpoint process.The Pinpoint service consists of three components.

    • Start/Stop HBase and view the process status

      shell> $PINPOINT_HOME/hbase-1.2.6.1/bin/start-hbase.sh
      shell> $PINPOINT_HOME/hbase-1.2.6.1/bin/stop-hbase.sh
      shell> ps -ef | grep hbase
      

      pinpoint-1-1-15_en.png

    • Start/Stop the Pinpoint Web and view the process status

      shell> $PINPOINT_HOME/pinpoint-web/bin/startup.sh
      shell> $PINPOINT_HOME/pinpoint-web/bin/shutdown.sh
      shell> ps -ef | grep pinpoint-web
      

      pinpoint-1-1-16_en.png

    • Start/Stop Pinpoint Collector and view the process status

      shell> $PINPOINT_HOME/pinpoint-collector/bin/startup.sh
      shell> $PINPOINT_HOME/pinpoint-collector/bin/shutdown.sh
      shell> ps -ef | grep pinpoint-collector
      

      pinpoint-1-1-17_en.png

    Install and configure Pinpoint Agent

    You should install and configure Pinpoint Agent yourself. (configuration example of Tomcat application) You should install and configure Pinpoint Agent yourself. (configuration example of Tomcat application)

    1. Download and install the Pinpoint Agent binary files. (Go to Pinpoint Releases).
      You need to choose an Agent installation directory and save files.

    2. Execute lines below to install an agent in Tomcat application service and edit the configuration file. Edit and save the $CATALINA_HOME/bin/catalina.sh file.

    $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"
    

    Variables for each configuration item are as follows:

    • $AGENT_PATH: A directory where Pinpoint Agent is installed
    • pinpoint-bootstrap-$VERSION.jar: Final release version (version 1.7.3 as of August 5, 2018)
    • $AGENT_ID: A unique ID to identify applications in Pinpoint Web Dashboard
    • $APPLICATION_NAME: An ID to identify application groups in Pinpoint Web Dashboard
    1. Enter the Pinpoint Collector server address in profiler.collector.ip=xxx.xxx.xxx.xxx from the ${AGENT_PATH}/pinpoint.config file.

    2. Execute $CATALINA_HOME/bin/startup.sh. Then, Pinpoint Collector (port: 9994) will collect values and send them to Pinpoint Agent.

    Verify that configurations are correctly done and the application is running. You can find that application ID/name are added in Pinpoint Web.

    Connect to Pinpoint Web

    Follow instructions below to connect after you completely install and start Pinpoint Components.

    • Connect to Pinpoint Web: http://{Public IP}:10090
    • Login: Use ppadmin/{Hostname}, the initial ID/password. You must change the initial ID and password by referring to the section “How do I reset the Pinpoint Admin password?” described above.

    pinpoint-1-1-22_en.png

    ① Enter Pinpoint Web ID and password.

    ② Click [Login]. You can use Pinpoint Main Dashboard after login.


    Was this article helpful?

    What's Next
    Changing your password will log you out immediately. Use the new password to log back in.
    First name must have atleast 2 characters. Numbers and special characters are not allowed.
    Last name must have atleast 1 characters. Numbers and special characters are not allowed.
    Enter a valid email
    Enter a valid password
    Your profile has been successfully updated.