- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我正在为我的数据库连接池使用以下配置。使用 HikariCP 1.4.0、jdk1.6.0_45 和 Oracle Express 11g,在 Windows 7 上运行。
HikariConfig config = new HikariConfig();
config.setDataSourceClassName("oracle.jdbc.pool.OracleDataSource");
config.addDataSourceProperty("serverName", "localhost");
config.addDataSourceProperty("url", "jdbc:oracle:thin:@localhost:1521:XE");
config.addDataSourceProperty("user", "bob");
config.addDataSourceProperty("password", "bob1");
config.setPoolName("steve");
HikariDataSource ds = new HikariDataSource(config);
// do some inserts and reads here ... works great
MBeanServer mBeanServer = ManagementFactory.getPlatformMBeanServer();
ObjectName poolName = new ObjectName("com.zaxxer.hikari:type=Pool (steve)");
Integer idleConnections = (Integer) mBeanServer.getAttribute(poolName, "IdleConnections");
System.out.println("Number of Idle Connections : " + idleConnections);
我得到这个堆栈跟踪:
javax.management.InstanceNotFoundException: com.zaxxer.hikari:type=Pool (steve)
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getMBean(DefaultMBeanServerInterceptor.java:1094)
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getAttribute(DefaultMBeanServerInterceptor.java:662)
at com.sun.jmx.mbeanserver.JmxMBeanServer.getAttribute(JmxMBeanServer.java:639)
使用 JConsole 并附加到正在运行的进程。我看到以下 MBean:JMImplemtation、com.oracle.jdbc、com.sun.management、java.lang、java.nio、java.util.logging。
我没有看到任何与 Hikari 连接池相关的信息。
有什么建议我接下来可以尝试吗?
最佳答案
两件事。有一个 bug reported就在两天前针对 HikariCP 1.4.0 关于用户定义的池名称被忽略(并替换为自动生成的名称)。此错误已修复,但您需要克隆存储库并自行构建它,因为它要到下一个版本才会出现。
第二件事是,您需要将 registerMbeans
设置为 true
。以编程方式,这将是 setRegisterMbeans(true)
。如果您运行现有的 1.4.0,您的用户定义名称将被忽略,但该池确实会被注册为 MBean。
关于java - HikariCP 1.4.0 MBean InstanceNotFoundException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24322737/
我对 java 中的托管 Bean 比较陌生,我试图找出为什么会出现异常。运行 Main.java 后,我得到粘贴在底部的异常。我尝试在 jconsole 上查看它,但它似乎没有出现。我错过了什么?
我在我的环境中遇到了一个非常奇怪的问题jboss-5.1.0.GAJava 版本“1.6.0_33”Java(TM) SE 运行时环境(build 1.6.0_33-b03)Java HotSpot(
我有一个 Jmx 客户端,用于测试我编写的 jmx bean。这是客户端的代码: JMXServiceURL url = new JMXServiceURL("service:jmx:rmi:
当我尝试使用下面的代码从代理(activemq)中删除一个队列时,我收到了类似 Instancenotfound 异常的错误。代码如下 JMXServiceURL url = new JMXServi
我们有一个 JMX 应用程序,我们在其中打开连接,然后在方法调用中使用对象名称 Catalina:type=Deployer,host=[hostname] (以检查应用程序是否已部署),但我们获取异
我正在尝试将 IntelliJ IDEA 12 连接到我在远程计算机上运行的 Tomcat 6 服务器,但遇到错误,原因是“javax.management.InstanceNotFoundExcep
我正在为我的数据库连接池使用以下配置。使用 HikariCP 1.4.0、jdk1.6.0_45 和 Oracle Express 11g,在 Windows 7 上运行。 HikariConfig
我正在尝试使用名为 getdbPoolStatistics() 的函数获取 dbpool 详细信息,该函数返回我要监视的所有指标的 HashMap 。在 getdbPoolStatistics() 中
我开发了一个 Spring boot 应用程序,该应用程序的功能运行良好。但是,在启动时,我多次看到以下异常。 当我几周前运行相同的应用程序时,我没有看到任何此类异常。此后代码库没有改变。我想知道它是
当我使用 IntelliJ IDEA 运行调试时: 出现了一个问题: It is possible to bind and connect to localhost:1099 at the same
我是一名优秀的程序员,十分优秀!