Pinpoint分布式系统性能监控工具

Pinpoint分布式性能监控工具(docker安装)
在做性能压测的时候,你是不是有只能看到测试报告?

在做性能压测的时候,你是不是想知道每一个方法执行了多长时间?

Pinpoint几乎可以帮助你查看你想看到的每一个细节。

 

Pinpoint是什么?
Pinpoint是一款全链路分析工具,提供了无侵入式的调用链监控、方法执行详情查看、应用状态信息监控等功能。基于GoogleDapper论文进行的实现,与另一款开源的全链路分析工具Zipkin类似,但相比Zipkin提供了无侵入式、代码维度的监控等更多的特性。 Pinpoint支持的功能比较丰富,可以支持如下几种功能:

服务拓扑图:对整个系统中应用的调用关系进行了可视化的展示,单击某个服务节点,可以显示该节点的详细信息,比如当前节点状态、请求数量等
实时活跃线程图:监控应用内活跃线程的执行情况,对应用的线程执行性能可以有比较直观的了解
请求响应散点图:以时间维度进行请求计数和响应时间的展示,拖过拖动图表可以选择对应的请求查看执行的详细情况
请求调用栈查看:对分布式环境中每个请求提供了代码维度的可见性,可以在页面中查看请求针对到代码维度的执行详情,帮助查找请求的瓶颈和故障原因。
应用状态、机器状态检查:通过这个功能可以查看相关应用程序的其他的一些详细信息,比如CPU使用情况,内存状态、垃圾收集状态,TPS和JVM信息等参数。
 

架构组成
Pinpoint 主要由 3 个组件外加 Hbase 数据库组成,三个组件分别为:Agent、Collector 和 Web UI。

Agent组件:用于收集应用端监控数据,无侵入式,只需要在启动命令中加入部分参数即可
Collector组件:数据收集模块,接收Agent发送过来的监控数据,并存储到HBase
WebUI:监控展示模块,展示系统调用关系、调用详情、应用状态等,并支持报警等功能
 

安装Collector组件
# 克隆官方提供的docker git
git clone https://github.com/naver/pinpoint-docker.git
cd pinpoint-docker
# 1.7.3版本需要将 pinpoint-docker/docker-compose.yml的第17行和第18行修改为绝对路径,否则会启动报错(docker 17.03版本测试)
# 如需修改相关组件的ip和端口,请修改pinpoint-Docker/.env文件
docker-compose pull && docker-compose up -d
# 启动完成后访问网页 http://localhost:8081/#/submit 将pinpoint-docker/pinpoint-flink/build/pinpoint-flink-job-{pinpoint-version}.jar 文件手动upload到flik组件中,上传的版本需要和pinpoint保持一致
# 访问:http://localhost:8079/ 即可浏览pinpoint页面
# 官方说明:https://github.com/naver/pinpoint-docker
 

安装Agent组件
 访问 https://github.com/naver/pinpoint/releases 下载和 Collector组件 相同版本的pinpoint-agent压缩包。

 解压pinpoint-agent压缩包,找到 pinpoint.config 文件,修改为你对应环境的配置。一般情况只需要修改配置项 profiler.collector.ip=127.0.0.1 为你自己的Collector组件的IP。

 

配置应用程序
// 如果你在多台机器上部署了应用程序,那么就需要在多台机器上部署Agent组件
// ${pinpointPath}是agent组件存放的路径,类似于JAVA_HOME
// 在java启动命令中加入如下参数
-javaagent:${pinpointPath}/pinpoint-bootstrap-1.7.3.jar
-Dpinpoint.applicationName=  // 在pinpoint上显示的名字
-Dpinpoint.agentId=               // id,可以和applicationName相同,也可以不同
启动程序,访问一下,就可以在pinpoint上看见相关数据。

 

pinpoint使用教程:https://blog.csdn.net/kangguang/article/details/77290209

内容如下:

这篇博客,应该是是目前为止,百度上能搜到的关于PinPoint使用教程中最详细的一份答案了。为什么这样说呢,因为我不想写PinPoint使用教程的,后来百度上搜了好久,搜烦了,一怒之下,自己出了一片最详细的教程。 
1.打开官网进入PinPoint(网址为服务器配置地址):http://10.168.56.135:28080/#/main 


2.选择需要查看的应用 

3.时间选择器 
3.1默认为选择固定时间段查看 

3.2点击按钮手动选择查看时间 

 

4.选择该应用的展示边界 
InBound:3 OutBound:3 

InBound:2 OutBound:2 

5.查看数据详细信息 
5.1长按鼠标左键,拖拽至右下方 

5.2弹出选择框内数据详情 

5.3红色条目代表该次请求失败,否则代表成功。选中任意条目,下方出现对应请求的详细信息 

5.4点击错误列表(红色条目)查看错误原因(Self搜索框可以在Call Tree和Timeline中根据时间进行信息筛选) 

5.5点击Mixed View按钮查看CPU、Memory使用情况 

6.查看应用详细信息 
6.1点击进入应用详情 


6.2应用详情主要包含数据采集起始时间、应用简介、选择某一时间段内CPU、Memory、TPS使用情况 


7.应用间事务筛选 
7.1应用间事务筛选 

7.2Filter Transaction(全部事务筛选) 

7.3Filter Transaction Wizard (按条件进行事务筛选:筛选错误信息) 


7.4注意事项 


源码:https://github.com/naver/pinpoint
技术概述:https://skyao.gitbooks.io/learning-pinpoint/content/design/technical_overview.html

 

PinPoint使用教程  http://blog.csdn.net/xiaozhuanddapang/article/details/74278970

PinPoint安装部署以及我遇上的那点儿坑 http://blog.csdn.net/xiaozhuanddapang/article/details/75554807

PinPoint采集器部署、配置Tomcat和Dubbo服务 http://blog.csdn.net/xiaozhuanddapang/article/details/74279143

PinPoint踩过的一些坑  http://blog.csdn.net/xiaozhuanddapang/article/details/75331938

HBase和PinPoint分别部署在不同服务器上  http://blog.csdn.net/xiaozhuanddapang/article/details/75452846

PinPoint实现邮件告警  http://blog.csdn.net/xiaozhuanddapang/article/details/76223314
————————————————
版权声明:本文为CSDN博主「_从头再来_」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/sanyaoxu_2/article/details/88671043

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值