java - Weblogic集群环境下如何设置远程调试?

标签 java eclipse debugging weblogic remote-debugging

我正在尝试远程调试部署在 WebLogic 12c 上的集群 Web 应用程序。

我知道如何为普通(非集群)环境设置远程调试,我只是将以下参数添加到名为 [startWebLogic.cmd] 的文件中:

set JAVA_OPTIONS=-Xdebug -Xnoagent -Xrunjdwp:transport=dt_socket,address=4000,server=y,suspend=n

但是当我尝试在集群环境的所有节点上设置相同的参数,然后使用 WebLogic 控制台页面启动集群时,远程调试将不起作用!! (Eclipse 将无法连接)。

我怀疑这是由 WebLogic 的节点管理器启动各个节点的方式引起的,就好像它没有为每个节点调用 [startWebLogic.cmd]。

最佳答案

我想通了!

当你通过WebLogic控制台页面启动集群节点时, 节点管理器以某种方式处理每个节点的启动,因此它不会运行每个节点的 [startWebLogic.cmd] 文件!

我发现您可以通过控制台页面本身为每个节点设置远程调试参数,以便节点管理器在尝试启动节点时将这些参数传递给每个节点。

下面是我是如何做到的(编辑:在 WebLogic 12c 上):

  1. 打开 WebLogic 控制台页面(例如:localhost:7001/console)
  2. 在页面左侧,转到环境> 集群
  3. 找到您的集群环境的名称并单击它
  4. “配置” 选项卡中,打开“服务器” 子选项卡
  5. 在页面底部,您会找到一个包含所有集群节点的表格。
  6. 单击其中一个节点(服务器)。
  7. “配置”标签中,打开“服务器启动”子标签
  8. 向下滚动一点,您会发现一个名为 "Arguments" 的文本区域,用远程调试参数填充它: -Xdebug -Xnoagent -Xrunjdwp:transport=dt_socket,address=4000,server=y,suspend=n
  9. 点击“保存”,然后在所有其他集群节点上重复步骤6-8

大功告成!

关于java - Weblogic集群环境下如何设置远程调试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29237033/

相关文章:

c - 使用 flock() 锁定用 fopen() 打开的文件

调试Google云消息推送消息

ios - 无法跳转到关闭状态

node.js - 将Clojurescript Repl连接到正在运行的 Node 进程的方法

java - DTO 在通过网络传输时如何自动序列化 (java)

java - 递归自动换行算法

eclipse - 如何允许/解决嵌套复合Gradle构建

java - 如何将外部属性文件位置添加到部署到 tomcat 6 的 Spring Boot 应用程序?

java - Android fragment 在启动时崩溃

c - 有没有办法使用 Eclipse/WinDbg 调试 VC++ 编译的应用程序?