草庐IT

java - 如何在 Spring 3.0 应用程序中配置 Hibernate 统计信息?

我们如何配置,以便在基于SpringMVC的Web应用程序中通过JMX获取Hibernate统计信息。有没有更好的方法来跟踪Hibernate性能。 最佳答案 将hibernate.generate_statistics设置为true(在persistence.xml或hibernate.cfg.xml中或者在你的session工厂bean配置中)。然后注册这个bean:(如果您不使用JPA,只需指定您的sessionFactorybean而不是通过EMF获取它)最后您需要一个mbean服务器和导出器:

java - ActiveMQ 从队列中获取所有消息

我想创建一些工具来管理队列中的消息。所以我希望能够从队列中获取所有消息(类似于导出)并且不要从那里删除它。我尝试使用JMXAPI:ObjectNamembeanNameQueue=newObjectName("org.apache.activemq:type=Broker,brokerName=static-broker1,destinationType=Queue,destinationName=tmp_queue2");org.apache.activemq.broker.jmx.QueueViewMBeanqueueView=JMX.newMBeanProxy(mbsc,mbea

java - 如何检测 Java 系统属性是否已更改?

我想知道系统属性何时更改。我在应用程序服务器中有一个应用程序,它以某种方式正在更改系统属性(我认为是System.setProperty())。我正在看,发现了不同的方法:JPDA?Observer&Observable?Propertychangelistener?JMX?有什么建议吗?提前致谢。 最佳答案 您可以用您自己的自定义子类替换系统属性。MyPropertiesnewProps=newMyProperties(System.getProperties());System.setProperties(newProps);然

java - 在 Tomcat 中部署 Web 应用程序

Tomcat是否为其容器中运行的每个Web应用程序使用不同的Java虚拟机(JVM),还是Tomcat中的所有Web应用程序都在同一个JVM下运行?举个具体的例子:如果webapps下的Web应用程序以编程方式(通过系统属性)启用JMX,这是否意味着为容器中运行的所有Web应用程序启用了JMX?我相信是这样,但想确认一下。这个问题来self在这个线程中的问题:questionontomcatandjmx.任何有关该主题的意见都将受到赞赏。 最佳答案 Tomcat在单个JVM中运行,因此部署到单个tomcat实例的每个应用程序都与其他

java - 为什么我使用 JMX 时会收到错误 "connection refused"

我无法连接到JMX对象。以下是我创建JMX对象的方法:publicstaticvoidmain(String...args){MBeanServermbs=ManagementFactory.getPlatformMBeanServer();try{ObjectNamename=newObjectName("org.javasimon.jmx.example:type=Simon");if(mbs.isRegistered(name)){mbs.unregisterMBean(name);}SimonManagerMXBeansimonManagerMXBean=newSimonMan

java - 如何使用 VisualVM 和 JMX?

我已经尝试了书中的所有食谱,但今天一切都行不通......我正在尝试使用VisualVM来分析我在远程服务器上运行的Java应用程序,所以我用谷歌搜索了一遍又一遍,寻找执行此操作的方法,最终得到了这个解决方案:java-Dcom.sun.management.jmxremote\-Dcom.sun.management.jmxremote.port=9199\-Dcom.sun.management.jmxremote.local.only=false\-Dcom.sun.management.jmxremote.authenticate=false\-Dcom.sun.managem

java - 我们可以使用 JMX 进行警报/通知吗

以下是我要尝试实现的规范简而言之:1)必须针对应用程序中的某些事件发送一些警报。2)这些警报有用户订阅。3)并且用户设置了自己的通知首选项(例如电子邮件和/或短信)。到目前为止,我还没有找到Java的开源解决方案。JMX通知是一个选项吗?我对JMX的了解越多,我就越觉得它正在尝试实现与我的问题不同的东西。任何帮助都是有用的。 最佳答案 JMX可以是解决这个问题的一种机制,但它不是完整的解决方案。JMX为您的程序提供设施和服务,以允许客户端访问监控数据以及允许客户端对应用程序进行控制调用。正如您所提到的,JMX的一个方面是通知系统。该

java - 使用 JMX(Java 管理扩展)API 获取 Activity session 计数

我正在尝试使用JMXAPI获取Web应用程序的Activitysession数。是否可以使用JMXAPI获取此类信息?如果是,它的可靠性如何?关于如何完成这项工作的任何示例代码?我一直在阅读JMX教程和文档,但它们向我提供了该技术的概述。我还不能确定我需要什么。 最佳答案 一旦您将应用服务器配置为公开JMX端口,您就可以使用JConsole或JVisualVM之类的工具来完成此操作。你没有提到你使用的是哪个应用程序服务器,但对于Tomcat,这里有描述:http://tomcat.apache.org/tomcat-5.5-doc/

java - 使用 Zabbix 进行 JMX 监控

我需要查看我的应用程序的内存大小、CPU使用率等等,找到了zabbix作为监控工具,想在zabbix和我的应用程序之间建立桥梁。我不想使用JMXMBeans添加额外的模块。是否有一些用于创建桥梁的实现/解决方案?我想在我的类路径中复制一些jar/jars并查看一般监控信息。非常感谢。 最佳答案 也可以使用Zabbix2.0的测试版(测试版为1.9),这将允许您使用JavaGateway作为桥梁。这确实需要运行另一项服务,但是它确实允许您在您不希望直接暴露JMX的各种防火墙后面监视远程java进程。JMX监控的文档是here

java - 如何通过 JMX 监控 spring-boot 应用程序?

我正在尝试为使用spring-boot构建的命令行应用程序设置JMX监控。根据https://github.com/spring-projects/spring-boot/tree/master/spring-boot-actuator我只需要添加依赖项:org.springframework.bootspring-boot-starter-actuator现在我启动我的应用程序,打开VisualVM,我已经看到我的应用程序PID。但是我现在如何访问actuator页面上提到的指标,如/health等?由于这是一个命令行应用程序,因此我没有任何可以执行的HTTP路径。如何通过JXM查看