4

我有一个类的 mbean,比如 foo.bar.Log4j,我想使用 jolokia 列出所有记录器?

我曾尝试阅读https://jolokia.org/reference/pdf/jolokia-reference.pdf但这告诉我如何获取预定义的 java.memory 等的值

请建议如何让 jolokia 检索用户定义类的记录器

4

1 回答 1

6

您必须记住,即使您的 mbean 是 servlet 中的单例,您的 servlet 也可能在多个端点上运行——这就是为什么仅命名空间不足以识别您的 mbean 实例的原因。

如果要获取 的所有实例foo.bar.Log4j,可以read像这样使用端点:

http://yourserver/jolokia/read/foo.bar.Log4j:*

通常,您可以获得所有可用 mbean 的列表,如下所示:

http://yourserver/jolokia/list

您应该最终得到一个包含您可能想要获取的所有内容的大型 json 文档。你会看到类似的东西

"foo.bar.Log4j": {
  "name=foo,type=MyLogger": {
    "desc": ...
    "attr": {
        ...
}}}

您现在可以使用以下方式获取属性:

http://yourserver/jolokia/read/foo.bar.Log4j:type=name=foo,type=MyLogger

除了typeand之外name,您还可以看到其他字段,例如contextor id。此 a:b 键是您的 mbean 的 Java ObjectName

于 2016-08-14T19:17:19.913 回答