HiveWE:终极魔兽争霸III地图编辑器完整使用指南与创作秘籍
2026/5/24 13:27:42
要进行远程调试,主要是对Tomcat和Java进程进行调试。以下是针对该系统的远程调试配置方法:
找到Tomcat的启动脚本(通常在/esafenet/tomcat/bin/catalina.sh或startup.sh):
# 在catalina.sh中JAVA_OPTS配置部分添加调试参数JAVA_OPTS="$JAVA_OPTS-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005"或者直接在启动命令中添加:
./catalina.sh jpda start修改/esafenet/tomcat/bin/catalina.sh:
# 查找JPDA相关配置,通常在文件开头附近JPDA_ADDRESS="5005"JPDA_TRANSPORT="dt_socket"然后在启动时使用:
./catalina.sh jpda start如果您希望通过守护进程保持调试模式,可以修改脚本中的Tomcat启动部分:
check_tomcat(){if[-d$tomcat]thensleep10tomcatpid=$(ps-ef|greptomcat|grep-vgrep|wc-l)if[$tomcatpid-eq0]thenecho"============Tomcat has been closed. Now start the Tomcat program with debug">>$LOGFILEcd$tomcat# 添加调试参数启动exportCATALINA_OPTS="-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005"./startup.sh>$DEV_NULL2>&1# 或者使用JPDA模式# ./catalina.sh jpda start >$DEV_NULL 2>&1sleep3elseecho"======Tomcat is running normally">>$LOGFILEfifi}修改logstash启动部分:
# 在check_logstash函数中修改nohup$LOGSTASH_DIR_NEW/bin/logstash -f$LOGSTASH_DIR_NEW/config/log_logstash_es_company_linux.conf\-J-Djruby.debug=true\--log.level debug>$DEV_NULL2>&1&# 在check_es函数中修改su-$EST_USER-c"/esafenet/elasticsearch/bin/elasticsearch -d \ -Enetwork.host=0.0.0.0 \ -Etransport.tcp.port=9300 \ -Ehttp.port=9200 \ -Enetwork.tcp.keep_alive=true"Host: <服务器IP> Port: 5005 Command line arguments: 保持默认Host: <服务器IP> Port: 5005 Connection Type: Standard (Socket Attach)确保调试端口开放:
# 开放5005端口firewall-cmd --zone=public --add-port=5005/tcp --permanent firewall-cmd --reload# 或者临时开放iptables -A INPUT -p tcp --dport5005-j ACCEPT安全考虑:生产环境慎用远程调试,建议:
性能影响:
suspend=n(不挂起启动)您可以创建一个专门的调试启动脚本:
/esafenet/bin/start_debug.sh:
#!/bin/bash# 停止当前服务/esafenet/bin/stop_all.sh# 设置调试环境变量exportJAVA_OPTS="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005"exportCATALINA_OPTS="-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005"# 按顺序启动各服务(带调试)check_mysql check_essleep5check_tomcat check_logstash# 查看调试端口监听netstat-tlnp|grep5005# 查看Java进程调试参数ps-ef|grepjava|grepjdwp# 测试端口连通性telnet<server_ip>5005连接拒绝:
连接超时:
调试不生效:
注意:在进行远程调试前,请确保: