我可以发现 JMX 接口吗?
我有一个供应商 JavaEE 应用程序。它的文档中有一个段落说“该产品有一个 JMX 接口,您可以在其中执行 X、Y 和 Z”。没有更多的 doco。
我应该如何(手动或以编程方式)发现接口 URI 是什么?
I have a vendor JavaEE application. Its documentation has a single paragraph that says "The product has a JMX interface where you can do X, Y and Z". There is no further doco.
How should I go about discovering (by hand or programmatically) what the interface URI is?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您可以在 Java EE 应用程序的 Java EE 服务器上并行部署 Jolokia 代理,然后使用 jmx4perl 的 j4psh 来探索 JMX 命名空间。请参阅 http://vimeo.com/20215477 查看演示。或者您使用 jmx4perl http://.... list | grep 'X' 用于查找执行 'X' 的 MBean。
如果您拥有 MBean 名称以及属性和/或操作名称,则可以使用任何标准 JMX 接口来访问此信息。
You could deploy a Jolokia Agent on the Java EE Server side-by-side of the Java EE app and then use jmx4perl's j4psh for exploring the JMX namespace. See http://vimeo.com/20215477 for a demo. Or you use
jmx4perl http://.... list | grep 'X'
for looking of MBean which do 'X'.If you then have the MBean name and the Attribute and/or Operation name's you can use any standard JMX interfadce for accessing this information.
如果您有权访问部署 J2EE 应用程序的计算机,那么您可以登录那里并检查端口使用情况并查看哪些进程正在使用哪些端口。您也许能够猜测出 JMX 注册的端口名称。一旦找到,您就可以访问 JMX 控制台。
但应该还有其他方法可以做到这一点。也许如果您可以登录 Tomcat 管理员或 JBOss 管理员,那里应该有一些线索。此外,您可以尝试使用 JConsole 连接到服务器计算机。
If you have access to the machine where the J2EE app is deployed, then you could login there and check the port usage and see which ports are being used by what processes. You may be able to guess the port name where the JMX is registered. Once you find that, you may be able to go to the JMX console.
But there should be some other way to do it. Maybe if you can login to the Tomcat admin or JBOss admin, there should be some clues there. Additionaly, you can try using JConsole to connect to the server machine.