pinpoint是java的apm工具,可以监控系统性能,分析访问情况,可以适用于分布式系统,同时对spring boot有原生支持。公司刚好使用的是spring boot框架进行开发的,pinpoint可以拿来一用。
pinpoint在github上有标准的安装文档,但是还是会遇到很多问题,现记录下自己安装过程和遗留问题。
pinpoint git地址 https://github.com/naver/pinpoint
pinpoint官方安装手册:http://naver.github.io/pinpoint/quickstart.html
安装过程
基础环境:linux centos6.4,jdk1.8,需要配置好JAVA_HOME变量,zookeeper安装启动即可
1、安装hbase2.0,首先下载hbase-2.0.0-bin.tar.gz
上传hbase-2.0.0-bin.tar.gz至/data目录,
tar -zxvf hbase-2.0.0-bin.tar.gz
cd hbase-2.0.0
vi conf/hbase-site.xml
hbase-site.xml内容
启动hbase
./bin/start-hbase.sh
下载hase-create.hbase,并安装基础表
./bin/hbase shell hbase-create.hbase
2、下载apache-tomcat-8.5.31.tar.gz、pinpoint-agent-1.7.3.tar.gz、pinpoint-collector-1.7.3.war、pinpoint-web-1.7.3.war等四个包
上传上述四个包至/data目录
tar -zxvf apache-tomcat-8.5.31.tar.gz
mv pinpoint-collector-1.7.3.war apache-tomcat-8.5.31/pp_col.war
mv pinpoint-web-1.7.3.war apache-tomcat-8.5.31/pp_web.war
cd apache-tomcat-8.5.31/bin
./startup.sh
通过http://192.168.12.222:28080/pp_web//#/main访问pinpoint
3、配置探针
mkdir pp_agent
cd pp_agent
tar -zxvf pinpoint-agent-1.7.3.tar.gz
接下来需要为spring boot配置探针,就是在spring boot的启动进程中增加javaagent
AGENT_OPTS="-javaagent:/data/pp_agent/pinpoint-bootstrap-1.7.3.jar -Dpinpoint.agentId=front-jsdx -Dpinpoint.applicationName=front-jsdx"
重新启动spring boot工程就可以看到有信息显示
4、遗留问题
a、无法采集到用户访问
已经按照官方的文档修改pinpoint.config配置信息
profiler.applicationservertype=SPRING_BOOT
profiler.tomcat.conditional.transform=false
结果只能收集到jvm信息,线程等信息,仍然无用户访问信息
b、无法采集到数据库连接信息
5、遗留解决及后续计划
a、后面偶然间点击response summary的chart,发现实际是有采集到的信息的,也能够看到完整的trace信息和servermap图,猜测是浏览器原因导致首页server map图没有展示
b、总结心得:开源项目遇到问题需要看别人的issue,大概率是同一类的问题,可以较为快速的得到答案。当然英文水平ok的话,最好直接跟作者沟通,或许更有收获。
c、后续考虑增加pinpoint在docker中的采集