用Python监控Java应用程序

7
我是一名 Python 程序员,想要通过与 JMX 进行通信来监控一个 Java 应用程序。我已经在网上搜寻了很久,但没有找到可靠的解决方案。我看过 jmx4python 和 JPype,但还没有决定使用哪个。而 Py4J 看起来不太有用。请问有什么框架或方法可以解决这个问题吗?顺便说一下 - 应用程序已经在运行中,我不想调用它。

我和你一样遇到了同样的问题。你最终找到了什么解决方案? - zhihuifan
3个回答

3

Jolikia是一个HTTP-JMX,可以帮助您管理和监控Java应用程序。了解更多信息请访问http://www.jolokia.org


2
您可以使用 jython 与Java的JMX库进行接口。

2
您最好的选择是使用Jython(http://jython.org)来完成这个任务。它可以调用所有花哨的JMX内容,而无需您重新编写使用二进制协议的内容,使用Python语法更加舒适。
但请注意,Jython与CPython不完全兼容(通常与库相关),尽管在实践中,它非常出色。当前版本的Jython似乎支持由CPython 2.7定义的语言。

Jython并不完全兼容,而且比Python慢,所以我尽量避免使用它。另外,我的基础设施是基于Python的,我不想混合使用。我目前正在检查Jolokia,并尝试将其用作HTTP / JSON桥接器。使用这个桥接器,我将使用REST API并访问JMX。这就是jmx4python的基本功能,但它看起来没有那么强大。 - Tal
你到底想做什么?看起来jmx4py并不是很有用——它支持的功能不是很多。你可能需要对其进行修改以满足你的需求。至于JPype,个人而言,我会选择使用Jython。Jython正在积极开发中,并被许多公司使用。我想这只是关于你实际需要如何访问数据的问题...抱歉我没有更多帮助。 - apg

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接