使用arthas工具处理,日志错误信息为Connection refused的问题。
例子:
问题描述:客户登录portal后,进入所有单据页面都提示500,日志提示,Connection refused。
处理过程:启动arthas(前提是有启动java进程),右键开始图标,搜索命令提示符(CMD),
打开后,输入cd arthas的路径,然后执行java -jar arthas-boot.jar
最后执行如下命令:
watch org.jasig.cas.client.validation.AbstractCasProtocolUrlBasedTicketValidator retrieveResponseFromServer "params[0]"
出现如下画面:表示目前向服务器发送请求的端口为:6888
然后检查,
eas/server/deploy/easweb.ear/eas_web.war/WEB-INF/sso/ssoParameter.properties
发现参数(#SSO EAS服务器地址)=127.0.0.1:6888
此处呼应先前arthas watch到的请求信息(表明,配置文件配置的请求端口为6888,目前客户端正在向服务器发送请求的请求端口也是6888。)
最后检查BOS管理控制台,
发现客户的服务器实例(该客户只有一个实例)对应的端口为7888,由于没有以6888为端口,所以EAS发出请求至端口为6888的服务器时,被拒绝。(Connection refused。)
解决的方案:
方案一.在BOS管理控制台上,重新部署实例,设置其端口号为6888.
方案二.修改eas/server/deploy/easweb.ear/eas_web.war/WEB-INF/sso/ssoParameter.properties文件的cas.client.serverName属性的参数值为7888。
arthas使用方法.docx(371.46KB)
推荐阅读