holdorph's blog is very good! link: http://www.unicon.net/node/614
About JMX
Actually, if you go to C:\COMET-DEV\workspaces\COES\config\quantum\cash\AP\dev\cash_coes_sls1, which is the config folder for COES, you can see that, there is actually one quantum config file --- spring-qas.xml, but go inside, you will find that, this file is composed of several sub config files. One of them is spr-include-mbeans.xml. And this file is just config the JMX as above.
How to config it
1) Config a MBean Server "java.lang.management.ManagementFactory"
2) Config a JMX exporter "org.springframework.jmx.export.MBeanExporter"
3) Put all your POJOs into the exporter map.
4) There is a requirement on how to write the key of the entry. You must follow the way of
<JMX category Name>:name=<MBean name>.
In the below example, I config the
JMX category name = tom
MBean name = myNumber
5) Also don’t forget to config your POJO.
An example
POJO
package test;
public class NumberHolder
{
private int number = 100;
public int getNumber()
{
return number;
}
public void setNumber(int number)
{
this.number = number;
}
}
Spring
<bean id="mbeanServer" class="java.lang.management.ManagementFactory"
factory-method="getPlatformMBeanServer" />
<bean id="exporter" class="org.springframework.jmx.export.MBeanExporter">
<property name="autodetect" value="true" />
<property name="server" ref="mbeanServer" />
<property name="beans">
<map>
<entry key="tom:name=myNumber" value-ref="number.holder" />
</map>
</property>
</bean>
<bean name="number.holder" class="test.NumberHolder"/>
How to Use it
2 requirements
1) Enable your JMX management function. Simply add the following parameters in your java command.
-Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote.port=9054
-Dcom.sun.management.jmxremote.authenticate=false
-Dcom.sun.management.jmxremote.ssl=false
2) Use JConsole to connect to it.
Jconsole.exe locates in the jdk/bin folder. You can add it as a eclipse external tool. When it is started, go to Remote tab, input host --- localhost port --- 9054 as configged above. Connect
You can see a new category --- tom, and a new MBean --- myNumber. Then, you can invoke the MBean public method.
- 大小: 55.2 KB
- 大小: 18.3 KB
分享到:
相关推荐
Usage: jmx-dump [options] -a, --attrs MBEAN List attributes of mbean MBEAN -c, --creds CREDS JMX Credentials, ROLE:PASS -d, --dump MBEAN Dump MBEAN mbean attributes and values in json --dump-all ...
jmxclient -get 'java.lang:type=Memory' HeapMemoryUsage ``` 4. **设置属性**:如果MBean的属性是可写的,你可以设置它的值,但并非所有属性都支持修改: ``` jmxclient -set 'java.lang:type=Threading' ...
4. **属性**:从选定的MBean中提取的特定属性,如`HeapMemoryUsage`或`NonHeapMemoryUsage`来监控内存使用。 5. **阈值**:设置警告和关键的阈值,当监控的属性超过这些值时,Nagios会发出警报。 在部署和配置`...
它支持在对象名称中使用 * 轻松获取复合属性(例如 HeapMemoryUsage)和批量获取/设置/调用多个对象。 用法 jmxsi command [params...] commands: - help - lsobj url objectname [outputformat] - lsattr url ...
Java虽然不像C++或C#那样可以直接调用操作系统API,但它提供了Java Management Extensions (JMX) 和 Java Native Interface (JNI) 这样的工具来获取这些信息。下面我们将详细探讨如何使用Java来获取CPU和内存信息。 ...
例如,C++可以使用Boost库,Python有psutil和subprocess模块,Java有Java Management Extensions (JMX)。 6. **实时监控**:如果示例应用程序不仅列出当前进程,还实时监控系统使用情况,那么它可能使用了定时器或...
要实现这一功能,通常需要利用Java提供的操作系统接口,例如Java Management Extensions (JMX) 或者 sun.misc包中的NativeMethodSupport类。以下是关于如何使用Java获取CPU占用率的详细知识讲解。 1. **Java ...
##Usage 服务将在 JMX 中以名称公开, com.hibernateinstrumentator:service=Instrumentator 和操作 listSessionFactories() // Lists all hibernate session factories available in JNDI. instrument(String) ...
本jar包用于各种java程序的jmx接口远程调用。 调用方法: java -jar jmxcmd.jar - 127.0.0.1:12345 java.lang:type=HeapMemoryUsage.max ...(3)java.lang:type=HeapMemoryUsage.max:java程序中的jmx接口
下载插件: 解压缩并cd到check_jmx / nagios / plugin 运行命令: ./check_jmx -U服务:jmx:rmi:/// jndi / rmi:// $ hostname:$ port / jmxrmi -O java.lang:type = Memory -A HeapMemoryUsage -K used -I ...
- binlog_disk_usage:二进制日志文件在磁盘上的占用情况,过大可能影响写入性能。 通过这些指标,我们可以分析MySQL服务器的性能瓶颈,及时进行调优,确保数据库系统的稳定性和高效运行。 综上所述,结合...
一个 Clojure 守护进程,旨在通过 jmx 监控 jvm 统计信息并输出到 riemann 用法 Usage: jvmstats-riemann -h localhost -p 2181 -i 5000 -s riemann.server.com -t "jvm_stats graph metrics" Options: -h, --...
8. **监控与调试**:使用工具如JMX(Java Management Extensions)监控Tomcat性能,或通过`jstack`命令查看线程状态,定位可能导致CPU高的问题。 9. **负载均衡与集群**:当单个Tomcat实例无法满足需求时,考虑使用...
- **JMX Overview**: Explanation of JMX and its role in monitoring and management. - **XDoclet for JMX**: Techniques for generating MBean interfaces and implementing managed beans. - **Performance ...
Attribute "HeapMemoryUsage" ``` 这段配置会收集Tomcat的内存使用情况,特别是堆内存的使用量。 接下来,你需要重启collectd服务以应用新的配置。一旦collectd开始收集数据,你就可以在collectd的默认输出...
- `HeapMemoryUsage`: 堆内存使用情况。 - `NonHeapMemoryUsage`: 非堆内存使用情况。 - `ObjectPendingFinalizationCount`: 等待最终化处理的对象数量。 - `Verbose`: 是否开启详细的GC日志输出。 - **内存...
- **HeapMemoryUsage**:只读属性,描述当前堆内存使用情况。 - **NonHeapMemoryUsage**:只读属性,描述当前非堆内存使用情况。 - **ObjectPendingFinalizationCount**:只读属性,记录等待最终化处理的对象数量。 ...
Ehcache是一种广泛使用的开源缓存解决方案,它提供了内存和磁盘存储,并且支持JMX管理。在Hibernate中配置Ehcache,需要在`hibernate.cfg.xml`配置文件中添加相应的provider类和缓存配置: ```xml ...
此外,还可以结合其他监控工具,如Prometheus、Grafana或JMX工具,将Java程序集成到更全面的系统监控环境中。这样可以实时监控多个指标,如内存使用、线程状态等,以提供更全面的系统健康状况视图。 总的来说,Java...