pinpoint docker启动及spring boot对接

1.介绍Pinpoint

Pinpoint 是一个APM(Application performance management)工具,相对于其他APM工具(例如ZipKin)有一个强大的优势,那就是应用程序无需修改一行代码就能直接使用,例如Java程序直接使用Pinpoint提供的Java agent(jar包)就能使用。目前Pinpoint直接Java/PHP/Python三种语言,未来可能会支持更多语言,开源社区极其活跃,版本迭代比较快。

 
Pinpoint的优势

除了上面谈到的对用户代码无嵌入外,Pinpoint还有以下优势:

1.强大的UI

pinpoint docker启动及spring boot对接_第1张图片

UI会自动识别程序的调用关系并且绘制图表,支持的组件多,例如Tomcat/Jetty/JBoss/Thrift/Kafka/Mysql等等。

2.调用链信息全

pinpoint docker启动及spring boot对接_第2张图片

除了能看到调用关系及每一级耗时外,还能看到每一级的参数及SQL。

3.高性能

在JVM字节码层做处理,程序的性能损耗小于3%。

Pinpoint架构

pinpoint docker启动及spring boot对接_第3张图片

由Pinpoint官方给出的架构图我们可以看出,Pinpoint Agent负责采集用户程序的信息 通过 网络将信息发给服务端 Pinpoint Collector,Pinpoint Collector将数据持久化到Hbase中,前端Web UI从Hbase中读取数据展示给用户。是一个标准的C/S分布式架构,选中Hbase的原因想必是为了支持海量数据。
 

2.安装

如果测试环境,可以一键使用别人封装好的docker镜像进行启动,网上有很多docker-compose启动的,比较麻烦,里面服务独立容器启动的,封装好的镜像可以一键启动

  docker run -it -d --name=pinpoint  --net=host 271760513/pinpoint:2.3.3

要注意--net=host 模式,不能有端口冲突

完事打开ip:8080,则启动成功

pinpoint docker启动及spring boot对接_第4张图片

3.对接spring-boot

1.下载pinpoint的agent

Release v2.3.3 · pinpoint-apm/pinpoint · GitHub

https://github.com/pinpoint-apm/pinpoint/releases/download/v2.3.3/pinpoint-agent-2.3.3.tar.gz

pinpoint docker启动及spring boot对接_第5张图片

2.解压修改配置文件

如果端口没有通过docker映射的话,只需要改一个ip就行

pinpoint docker启动及spring boot对接_第6张图片profiles\release\pinpoint.config

profiler.transport.grpc.collector.ip=192.168.1.27

profiler.collector.ip=192.168.1.27

#采样率 全采样
profiler.sampling.rate=1

3.修改spring-boot项目的jvm参数

-javaagent:D:\pinpoint-agent-2.3.3\pinpoint-bootstrap-2.3.3.jar
-Dpinpoint.applicationName=imgbd-admin
-Dpinpoint.agentId=imgbd-admin-local

修改对应的路径和applicationName即可

4.启动项目

请求接口即可在pinpoint的web查看到调用链

pinpoint docker启动及spring boot对接_第7张图片

你可能感兴趣的:(docker,spring,boot,容器)