非单例(原型)Spring bean JMX 可监控
Non Singleton (prototype) Spring beans JMX moniterable
我是 Spring JMX 的新手。我想通过 Spring JMX 监视项目中的原型 bean,我创建了一个示例项目来向正在工作的 Spring 的 MbeanExporter 注册一个 bean(Singleton)。然后我用谷歌搜索用 Spring JMX 注册非单例 bean 并监视它,但我没有发现任何有用的东西。
我发现 Spring forum post 描述了我的问题,但答案不切题。
我一直在谷歌搜索这个问题,但我在 stackoverlow 上发现很少有真正帮助我的帖子。只需在此处复制代码:-
@Component("MyPrototypeScopedBeanName")
@Scope(value = "prototype")
@ManagedResource
public class MyPrototypeScopedBeanName implements SelfNaming
@Autowired
MBeanExporter exporter;
.
.
@PostConstruct
private void init() throws Exception {
exporter.registerManagedResource(this);
}
.
.
.
@Override
public ObjectName getObjectName() throws MalformedObjectNameException {
return new ObjectName("com.foobar", "name", this.toString());
}
此外,您可能希望将您的导出器配置为在自动检测期间忽略它,因为自动检测与原型一起工作的方式,它会为自己创建另一个实例,这将向您的 JMX 控制台添加一个额外的实例。
<property name="autodetect" value="true"/>
<!-- Done to prevent creation of additional prototype during autodetect routine -->
<property name="excludedBeans">
<list>
<value>MyPrototypeScopedBeanName</value>
</list>
</property>
Whosebug link
Another link
礼貌:- @theJC
我是 Spring JMX 的新手。我想通过 Spring JMX 监视项目中的原型 bean,我创建了一个示例项目来向正在工作的 Spring 的 MbeanExporter 注册一个 bean(Singleton)。然后我用谷歌搜索用 Spring JMX 注册非单例 bean 并监视它,但我没有发现任何有用的东西。
我发现 Spring forum post 描述了我的问题,但答案不切题。
我一直在谷歌搜索这个问题,但我在 stackoverlow 上发现很少有真正帮助我的帖子。只需在此处复制代码:-
@Component("MyPrototypeScopedBeanName")
@Scope(value = "prototype")
@ManagedResource
public class MyPrototypeScopedBeanName implements SelfNaming
@Autowired
MBeanExporter exporter;
.
.
@PostConstruct
private void init() throws Exception {
exporter.registerManagedResource(this);
}
.
.
.
@Override
public ObjectName getObjectName() throws MalformedObjectNameException {
return new ObjectName("com.foobar", "name", this.toString());
}
此外,您可能希望将您的导出器配置为在自动检测期间忽略它,因为自动检测与原型一起工作的方式,它会为自己创建另一个实例,这将向您的 JMX 控制台添加一个额外的实例。
<property name="autodetect" value="true"/>
<!-- Done to prevent creation of additional prototype during autodetect routine -->
<property name="excludedBeans">
<list>
<value>MyPrototypeScopedBeanName</value>
</list>
</property>
Whosebug link
Another link
礼貌:- @theJC