A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

pinpoint是开源在github上的一款APM监控工具,它是用Java编写的,用于大规模分布式系统监控,属于分布式调用链监控组件。

它主要的特点是开箱即用、完备的Web界面,对性能影响较小,无侵入式安装探针,小团队懒人的必备佳品。

官网:https://github.com/naver/pinpoint

监控截图如下:

服务器端主要分为三部分:

  • pinpoint-collector.war 控制器,用于接受各客户端传回来的数据,保存在Hbase里。需要部署在中间件(比如tomcat)中
  • pinpoint-web.war 监控界面,即上图这个还不错的Web界面。需要部署在中间件(比如tomcat)中
  • Habse数据库 ,用于存储数据

客户端pinpoint-agent,其实就是一个jar包,主要是放在待监控的目标机器上,随待监控的jvm启动即可。支持tomcat、jboss、spring boot.

以tomcat为例:只需要在tomcat的catalina.sh中加入以下代码即可

CATALINA_OPTS="$CATALINA_OPTS -javaagent:$AGENT_PATH/pinpoint-bootstrap-$VERSION.jar"CATALINA_OPTS="$CATALINA_OPTS -Dpinpoint.agentId=$AGENT_ID"CATALINA_OPTS="$CATALINA_OPTS -Dpinpoint.applicationName=$APPLICATION_NAME"
  • 1
  • 2
  • 3

安装部署都比较简单,不赘述,参考官网即可

https://github.com/naver/pinpoint/blob/1.7.3/doc/installation.md

注意事项

pinpoint-collector对外开放的三个端口9994\9995\9996,主要用于从agent处获取数据,其中9994为tcp协议,9995及9996均为udp协议,在生产环境开通网络权限时需要注意

还有就是pinpoint-agent并不是把所有的请求都会拦截发送到pinpoint-collector上,只是部分请求(大约20%),因此只能做性能分析告警用,不能作为全数据参考。


4 个回复

正序浏览
回复 使用道具 举报
回复 使用道具 举报
回复 使用道具 举报
奈斯,优秀
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马