0

当我使用 jconsole 访问 weblogic 的 mbean 时,我只能得到一些关于 jvm 的信息,比如'java.lang'。但我想要得到的是关于'jdbc'、'jta'、'ejb'、'servlet'......

不知道能不能通过service:jmx:rmi:///jndi/rmi://10.0.99.102:7997/jmxrmi 用用户名和密码得到这些指标。我觉得很有可能是我的配置有错误,但是我没有不知道问题出在哪里。

然后我尝试了另一种方式。我启用了iiop,但我无法通过iiop访问它。我遇到了一些错误,例如无法检索 RMIServer 存根:javax.naming.NameNotFoundException。尝试解决这个错误,我将 wljarbulder.jar 添加到我的项目中,然后出现另一个错误,'查找中未处理的异常,原因是:javax.naming.NamingException 查找中未处理的异常 [根异常是 org.omg.CORBA.NO_PERMISSION ...'。

我只需要获取 weblogic 的 mbean 信息,我正在尝试通过 jmx 监控 weblogic。(我收集了weblogic的snmp oid,但是还不足以完成我的监控计划)

谢谢你。

4

2 回答 2

0

实际上,我发现了问题所在。看来iiop默认的用户名和密码必须和weblogic Admin设置的一样。我不明白为什么会这样,但是当我阅读一篇博客并尝试时,我得到了数据。

我不确定是否可以通过此获取所有 mbean 数据,但它至少连接成功并显示大量数据。

我现在应该使用 jconsole 找到我想要的值。emmm,但我无法通过 jconsole 连接。但这是下一个问题。

于 2019-05-14T09:06:52.130 回答
0

首先将这些参数添加到您的 WebLogic Server 实例:

  • -Dcom.sun.management.jmxremote
    -Djavax.management.builder.initial=weblogic.management.jmx.mbeanserver.WLSMBeanServerBuilder
    -Dcom.sun.management.jmxremote.port=6789
    -Dcom.sun.management.jmxremote.authenticate=false
    -Dcom.sun.management.jmxremote.ssl=false

其次,启动 jconsole :

jconsole.exe -J-Djmx.remote.protocol.provider.pkgs=weblogic.management.remote -J-Djava.class.path=%JAVA_HOME%\lib\jconsole.jar;%WL_HOME%\server\lib\weblogic.jar;%JAVA_HOME%\lib\tools.jar

并连接到端口 6789

于 2019-05-14T09:08:33.413 回答