pinpoint监控springboot应用性能

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

一,前提条件

  • maven 3.2.x+
  • git
  • java 6+ (推荐jdk8)

二,准备工具

  • Hbase  下载地址: http://apache.mirror.cdnetworks.com/hbase/
  • pinpoint  下载地址: https://github.com/naver/pinpoint.git

三,部署

1,部署Hbase,由于Pinpoint以Hbase作为数据的存储,因此首先安装Hbase,如下:

  • 下载Hbase并解压
  • 编辑/work/install/hbase-1.2.6/conf/hbase-env.sh文件(具体文件位置由安装Hbase路径决定),添加JAVA_HOME配置,大概在27行左右加入export JAVA_HOME=/usr/local/java/jdk1.8.0_131
  • 编辑/work/install/hbase-1.2.6/conf/hbase-site.xml文件(具体文件位置由安装Hbase路径决定),内容如下:

   
        hbase.rootdir
        file:///work/install/hbase-1.2.6/data
   

   
        hbase.zookeeper.property.clientPort
        2182 
   
    

2,部署Pinpoint-collector,如下:

将pinpoint-collector-1.7.0-RC1.war拷贝到tomcat8080的webapps目录下,修改tomcat各端口只要不冲突就行,启动tomcat8080,修改WEB-INF/classes/hbase.properties文件,内容如下:

hbase.client.host=localhost
hbase.client.port=2181

重启启动tomcat8080。

3,部署Pinpoint-web,如下:

将pinpoint-web-1.7.0-RC1.war拷贝到tomcat8081的webapps目录下,修改tomcat各端口只要不冲突就行,启动tomcat8081,修改WEB-INF/classes/hbase.properties文件,内容如下:

hbase.client.host=localhost
hbase.client.port=2181

重启启动tomcat8081。

4,部署Pinpoint-agent,如下:

  • 新建目录:mkdir pp-agent
  • 将pinpoint-agent-1.7.0-RC1.tar.gz 拷贝到pp-agent目录并解压
  • 配置pinpoint.config:profiler.collector.ip=127.0.0.1这是指pinpoint-collector的地址,如果是同一服务器,则不用修改。其它默认。
  • 启动pinpoint-collector后,自动就开启了9994,9995,9996的端口了,这里默认即可。如果有端口需求,要去pinpoint-collector的配置文件(“pinpoint-collector/webapps/ROOT/WEB-INF/classes/pinpoint-collector.properties”)中,修改这些端口。

5,springboot包部署,如下:

  • 简单启动方式:#nohup java -javaagent:/work/install/pp-agent/pinpoint-bootstrap-1.7.0-RC1.jar -Dpinpoint.agentId=springboot-sample -Dpinpoint.applicationName=springboot-sample -jar spring-boot-sample.jar --spring.profiles.active=test > catalina.out  2>&1 &
  • 脚本启动方式:./startup.sh mySpringbootApp.jar dev

#!/bin/sh
#功能简介:启动上层目录下的jar文件
#参数简介:
#    $1:jar文件名(包含后缀名)
#    注意:jar文件必须位于startup.sh目录的上一层目录。
#启动方式: ./startup.sh xxx.jar dev

#启动参数
JAVA_OPTS="-server -Xms400m -Xmx400m -Xmn300m -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=128m -Xverify:none -XX:+DisableExplicitGC -javaagent:/work/install/pp-agent/pinpoint-bootstrap-1.7.0-RC1.jar -Dpinpoint.agentId=springboot-sample -Dpinpoint.applicationName=springboot-sample"

jar_name=$1 #第一个参数jar包名
active_profile=$2 #第二个参数启动环境
this_dir="$( cd "$( dirname "$0"  )" && pwd )" #脚本所在当前目录
parent_dir=`dirname "${this_dir}"` #脚本上级目录
log_dir="${parent_dir}/logs" #标准输出目录
log_file="${log_dir}/catalina.out" #标准输出文件
jar_file="${parent_dir}/applications/${jar_name}" #jar所在位置,位于父目录下的applications目录下,可执行jar必要放在applications目录下

#参数个数<1或者参数空值时,中断执行
if [ $# -lt 1 ] || [ -z $1 ]; then
    echo -e "\033[31m 请输入要部署的jar包名称! \033[0m" #以红色字体提示错误
    exit 1
fi

if [ ! -n "$2" ] ;then
    echo -e "\033[34m warn:没有指定环境变量, 默认为test \033[0m" #以黄色字体警告
    active_profile="test"
fi

#日志文件夹不存在,则创建
if [ ! -d "${log_dir}" ]; then
    mkdir "${log_dir}"
fi

#父目录下jar文件存在
if [ -f "${jar_file}" ]; then
    #启动jar包;重定向标准错误/输出到文件
    java $JAVA_OPTS -jar ${jar_file} --spring.profiles.active=${active_profile} 1>"${log_file}" 2>"${log_file}" &
    tailf ${log_file}
else
    echo -e "\033[31m${jar_file}文件不存在!\033[0m" #以红包字体提示
    exit 1
fi

四,看效果

pinpoint监控springboot应用性能_第1张图片

转载于:https://my.oschina.net/u/1257739/blog/1585724

你可能感兴趣的:(pinpoint监控springboot应用性能)