在jConsole中更改方法调用弹出响应

时间:2019-06-03 10:28:48

标签: java spring-boot jmx spring-boot-actuator jconsole

我正在通过JMX在Spring Boot应用程序的类中公开一些操作。但是,在jConsole中,当我调用该方法时,会弹出“成功调用方法”。我知道那是因为该方法什么也不返回。但是我想在调用方法时显示有用的信息。

我正在使用Spring提供的@ManagedOperation,但没有这样的属性。我也找不到任何文档。 我可以通过发送通知来通知执行者,但是我想知道是否有任何直接警告信息的方法。

这通常是警报方式。

enter image description here

让我举个例子。我有多个正在运行的容器,并且提供了停止和启动它们的操作。例如,当调用start时,我希望它提醒“ Container X已经启动”或“ Container X已经在运行”。我可以通过从方法中以字符串形式返回这些响应来做到这一点,但是我不认为这是应该走的路。我想知道API本身是否存在实现此目的的方法。

希望,我很清楚。

1 个答案:

答案 0 :(得分:1)

这是不可能的,您不能更改jConsole行为。

以您的示例为例:

如果调用的方法有多个结果,则将其作为消息返回是很有意义的。

但是也许您应该考虑将它们公开为HTTP端点,您可以在其中返回适当的HTTP状态代码而不是字符串。