查看原文
其他

测试/沙箱环境进行debug的2种方式

韩淑珍 转转QA 2023-02-24

背景

 

因为参与多项目服务开发,在上线前需要在沙箱环境自测验证,因为是沙箱环境是线上数据,数据量大,在测试环境很难复现,而排查问题需要debug。基于此背景,总结本文如何进行远程debug

那么如何对测试环境和沙箱进行远程调试?

1、新建remote


2、debug端口查找

1)方法1: sic平台 在服务信息--查找到相关服务,例如:tapd_data_server–点击进入详情--服务配置下有debug端口


2)方法2: debug端口拼接 先找到启动参数,以tapd_data_server为例:

/xxxx/xxxx/service/tapd_data_server/conf

查找对应环境的启动参数

拼接:

/xxxx/xxxx/jdk/jdk1.8.0_191/bin/java -Xms2g -Xmx2g -Xmn2g 
-Dspring.profiles.active=sandbox 
-javaagent:/opt/soft/jacoco/lib/jacocoagent.jar=includes=com.xxxx.*:com.xxxx.*,output=tcpserver,address=1xx.xx.xx.172,port=xxxx
-javaagent:/opt/soft/zztools/transmittable-thread-local/transmittable-thread-local.jar 
-javaagent:/opt/soft/zzapm/pinpoint-bootstrap.jar 
-Dpinpoint.applicationName=tapd_data_server 
-Dpinpoint.agentId=xxxx_server.1xx.xx.xx.172 
-Dzz.service.type=xxxx 
-Dzz.service.name=tapd_data_server -jar 
-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=12345 /xxxx/xxxx/service/tapd_data_server/tapd_data_server.ja

拼接详解:

1)cmd 参数 可执行程序/文件/shell   

命令路径: /xxxx/xxxx/jdk/jdk1.8.0_191/bin/java 

2)查看启动参数-参数拼接 例如:沙箱环境

jvmArgs=-Xms2g -Xmx2g -Xmn2g 
-Dspring.profiles.active=sandbox 
-javaagent:/xxxx/xxxx/jacoco/lib/jacocoagent.jar=includes=com.xxxx.*:com.xxxx.*,output=tcpserver,address=1xx.xx.xx.172,port=xxxx

idea的数据:

-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=xxxx

3)jar文件路径(xxxx服务会读配置文件):

/xxxx/xxxx/service/tapd_data_server/tapd_data_server.ja

3、查看服务状态

xxxx list(此为运维设置的别名,直接输入alias即可显示已有的别名,需要了解可看下面的扩展项)

4、停止服务

xxxx stop xxxx_serverxxxx restart xxxx_server可用xxxx服务查看命令,这个也是别名如第3点),并执行上面拼接的debug路径,就可以开始debug了

5、总结

1)快速定位找到问题解决 

2)debug很重要,操作小技巧很多,大家可以通过操作或百度了解 

注:生产环境操作慎重,最好不要在生产环境去调试

6、扩展

1)别名的设置

alias 别名=’原命令 -选项/参数’ 例如:

alias ll='ls -lt'1

这样设置了ls -lt命令的别名是ll,在终端输入ll时,则相当于输入了ls -lt命令 注意:在定义别名时,等号两边不能有空格,否则shell不能决定您需要做什么。仅在命令中包含空格或特殊字符时才需要引号。如果键入不带任何参数的alias 命令,将显示所有已定义的别名。2)查看已经设置的别名列表

alias -p1

3)删除别名

unalias 别名 例如:

unalias lll

4)设置别名每次登入可用

alias命令只作用于当次登入的操作。如果想每次登入都能使用这些命令的别名,则可以把相应的alias命令存放在 ~/.bashrc 文件中。打开~/.bashrc文件,输入要设置的alias命令,保存,然后运行

source ~/.bashrc


作者:韩淑珍

编稿:庄锦弟


想了解更多转转公司的业务实践,点击关注下方的公众号吧!


您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存