Pinpoint 大型分布式请求跟踪系统的搭建与使用

CoffeySaxon 发布于25天前
0 条问题

Pinpoint 是用 Java 编写的大规模分布式系统性能管理工具, 可以跟踪请求, 硬件信息收集, 请求时间统计等等

项目主页: https://github.com/naver/pinpoint

前提

1、有分布式部署的项目可供测试 2、至少一台服务器 3、Java、Hbase、Zookeeper、Tomcat 环境

说明

1、个人不喜欢 hbase 自带的 zk ,如无癖好, 可随意 2、本文不讲解基础环境的搭建, 如不会,请自行搜索或者参考博客的其他文章 3、为避免部分端口不通等可疑问题, 建议关闭防火墙

下载

准备环境

1、配置 JDK 环境 (笔者使用 Oracle 1.8, openJdk 可以) 2、搭建 Zookeeper 环境 (单机即可) 3、搭建 Hbase (单节点即可) 4、在 Hbase/bin 下执行 ./hbase shell hbase-create.hbase 创建相关存储结构 5、准备 Tomcat 环境

说明:Zookeeper 是为了给 Pinpoint 集群部署准备的, 如果乐意, 也可和 Hbase 共用

部署说明

Pinpoint 分为三个模块 ( agent、collector、web )

agent:tar 包, 解压运行, 负载修改项目字节码、采集信息, 部署项目的服务器上都要部署 agent

collector:war 包, 负责收集汇总 agent 上传的信息并持久化到 hbase , 只部署单台即可, 可水平拓展

web:war 包, 负责数据的可视化形式展示, 只部署单台即可, 可水平拓展

注意:web 和 collector 可分开部署, 也可部署一块, 本文将会把他们两个部署到同一个 Tomcat 容器中

修改 Pinpoint

pinpoint-collector-1.6.2.war

pinpoint-web-1.6.2.war

部署 collector 和 web

1、将准备好的 tomcat 中 webapps 目录清空

2、将上一步修好的两个 war 包放置到 webapps

3、将 pinpoint-web-1.6.2.war 修改为 ROOT.war

4、将 pinpoint-collector-1.6.2.war 修改为 collector.war

5、启动 Tomcat

查看 tomcat/logs 下的日志, 注意观察有没有连接不到 2181 端口的日志, 如果有, 可能是 war 中的配置没有修改正确, 建议清空 tomcat 下 work、temp 文件夹后重试

部署 agent

1、将 pinpoint-agent-1.6.2.tar.gz 解压, 2、把 pinpoint.config 文件中 profiler.collector.ip 属性值修改为部署 collector 机器的主机名或 IP

注意:每个项目所在的服务器都需要部署 agent

修改自己项目的启动参数

需要添加三个启动参数

Tomcat 和 Jar 项目有不同的添加方式,可参考如下方式修改

Tomcat

找到 bin/catalina.sh 添加下面的代码

SpringBoot

java-javaagent:/home/junbaor/pinpoint-agent/pinpoint-bootstrap-1.6.2.jar-Dpinpoint.agentId=bbs-web-1-Dpinpoint.applicationName=bbs-web-jar bbs-web-0.0.1-SNAPSHOT.jar

在自己的项目添加完毕启动后,即可登录 web 后台查看集群的状态, 跟踪请求

截图预览

Pinpoint 大型分布式请求跟踪系统的搭建与使用

右上角的绿点表示请求, 用鼠标框选后可以查看详情

Pinpoint 大型分布式请求跟踪系统的搭建与使用 Pinpoint 大型分布式请求跟踪系统的搭建与使用 Pinpoint 大型分布式请求跟踪系统的搭建与使用 Pinpoint 大型分布式请求跟踪系统的搭建与使用 Pinpoint 大型分布式请求跟踪系统的搭建与使用 Pinpoint 大型分布式请求跟踪系统的搭建与使用 Pinpoint 大型分布式请求跟踪系统的搭建与使用

敬请关注「搜云库技术团队」微信公众号,获取最新文章

作者:junbaor
整编:搜云库技术团队,欢迎广大技术人员投稿
投稿邮箱:admin@souyunku.com

如果对本文的内容有疑问,请在文章留言区留言,谢谢。

查看原文: Pinpoint 大型分布式请求跟踪系统的搭建与使用

  • ticklishladybug
  • tinypanda
  • ticklishbutterfly
  • goldendog
  • brownbear
  • lazypanda
  • whitekoala
  • crazytiger
需要 登录 后回复方可回复, 如果你还没有账号你可以 注册 一个帐号。