👋 欢迎来到吴老二技术博客,专注运维 / 数据库 / 云原生
首页/正文

pinpoint客户端使用变量传参数

吴
吴老二
2020-05-083503 次浏览0 条评论
在kubernetes中,添加pinpoint-agent,为了区分不同的环境使用pinpoint-agent,我们首先需要定义一个基础镜像,在这个基础镜像中需要把pinpoint-agent加到基础镜像中,并且pinpoint-agent中不能设置collector,只能根据不同的环境在启动应用的时候把collector服务的ip作为一个参数添加进去,这样每次使用时,针对镜像的操作不需要修改。我们这里在tomcat和kubernetes中分别测试,先在tomcat中举例一下:

tomcat环境

我的pinpoint服务已经搭建好了,这里只把tomcat的配置修改一下,我们先把pinpoint-agent的信息修改成一个变量,这里注意,一定不能使用默认的pinpoint-agent,默认的的是127.0.0.1,如果使用默认的就会出现访问到127服务上了,请求超时,这里的请求是配置文件中的优先级比传参数的优先级要高。
[root@www.wulaoer.org wulaoer]# vim pinpoint-agent/pinpoint.config 
#
# Pinpoint agent configuration
#

###########################################################
# Collector server                                        #
###########################################################
#profiler.collector.ip=10.211.55.202
profiler.collector.ip=collector
然后修改一下tomcat的配置信息,在tomcat配置中相比以前增加了一个-Dprofiler.collector.ip参数,这里的ip是一个变量和上面配置的一致就是指定到collector服务的ip地址。
[root@www.wulaoer.org wulaoer]# vim pinpoint-test/bin/catalina.sh 

CATALINA_OPTS="$CATALINA_OPTS -javaagent:/apps/work/soft/pinpoint-agent01/pinpoint-bootstrap-1.8.5.jar"
CATALINA_OPTS="$CATALINA_OPTS -Dpinpoint.agentId=collector"
CATALINA_OPTS="$CATALINA_OPTS -Dpinpoint.applicationName=test9527"
这是我们使用的tomcat配置,看上去区别不是很大,下面我们使用jar包来测试一下,我创建了一个jar包,可以参考:https://www.wulaoer.org/?p=1154 上面配置后需要把collector指向collector服务的ip地址,在/etc/hosts文件中即可。
[root@www.wulaoer.org ~]# vim /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

172.28.30.6 pingrpc

10.0.0.1 collection

[root@www.wulaoer.org wulaoer]#java -javaagent:/root/wulaoer/pinpoint-agent/pinpoint-bootstrap-2.0.2.jar -Dpinpoint.agentId=2222 -Dpinpoint.applicationName=test9527 -Dprofiler.collector.ip=collector -jar demo-0.0.1-SNAPSHOT.jar
同样不需要修改,直接执行,下面我们使用脚本请求一下jar文件。
[root@www.wulaoer.org ~]# for i in `seq 1 10000`;do curl http://10.211.55.36:8080/hello;done

docker环境

上面的方法可以参考一下https://www.wulaoer.org/?p=1187 的方法,如果在k8s上做的话,先测试一下,我这里做了一个镜像,镜像中已经把客户端添加到镜像中了,我先用镜像创建一个容器,然后在容器上直接启我的jar包。
[root@www.wulaoer.org ~]# docker run -it -p8080:8080 --rm b8bfcd1f7ef2 /bin/bash
[root@f775c2fff271 /]# cd data/
[root@f775c2fff271 data]# ls
pinpoint-agent demo-0.0.1-SNAPSHOT.jar 
[root@f775c2fff271 data]# vim /etc/hosts
127.0.0.1       localhost
::1     localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
172.17.0.2      f775c2fff271
10.0.0.1    collector
[root@f775c2fff271 data]# java -javaagent:/data/pinpoint-agent/pinpoint-bootstrap-2.0.2.jar -Dpinpoint.agentId=2222 -Dpinpoint.applicationName=test9527 -Dprofiler.collector.ip=collector -jar demo-0.0.1-SNAPSHOT.jar
这样在docker中设置完成,我们可以使用上面的方法测试一下,我自己测试的没有问题。
文章底部广告位在后台「广告设置」填写广告代码后显示

评论 0

评论需 登录 后发表(注册并验证邮箱)。
还没有评论,来抢沙发~