0、结合turbine以及zipkin也可以对服务成功率以及链路调用关系做监控,但是两者分散,没有整合在一起,且turbine的数据没有持久化,不便于定位历史问题。
1、这里可以搭建pinpoint作为我们的APM工具。
2、克隆pinpoint-docker
git clone https://github.com/naver/pinpoint-docker.git
3、若在启动过程中遇到报YAML的版本问题,可以尝试升级docker-compose
docker-compose pull && sudo docker-compose up -d
4、期间经常发生UI界面不能拉去程序列表,长时间卡顿的问题。通过docker logs -f发现是pinpoint-hbase的ip已经发生了改变,pinpoint-web以及pinpoint-collector连接不上pinpoint-hbase。
5、解压pinpoint-agent到D盘,并修改以下参数
profiler.collector.ip=192.168.3.71
profiler.tomcat.conditional.transform=false
6、启动程序
java -javaagent:D:\pinpoint-1.8.5\pinpoint-bootstrap-1.8.5.jar -Dpinpoint.agentId=SpringBootTest -Dpinpoint.applicationName=SpringBootTest -jar build\libs\SpringBootTest-0.0.1-SNAPSHOT-boot.war
7、结果
8、遗憾的是,对于SpringBoot Feign只能展示一层的调用关系,缺少后端的调用SpringBootTest,具体原因待研究。
9、pinpoint中使用到了hbase、flink、zookeeper以及mysql,架构较为复杂
10、下一遍将尝试使用apache加持的skywalking。