在 JBossAS4 中,MBean jboss.jca.ManagedConnectionPool 允许访问数据源的已使用连接数和可用连接数等。这个 MBean 在 JBossAS7 中不再可用。
如何在 JBossAS7 中访问这些值?似乎有一种方法:JBoss 管理控制台提供了这些值。
在 JBossAS4 中,MBean jboss.jca.ManagedConnectionPool 允许访问数据源的已使用连接数和可用连接数等。这个 MBean 在 JBossAS7 中不再可用。
如何在 JBossAS7 中访问这些值?似乎有一种方法:JBoss 管理控制台提供了这些值。
有一个jboss.as:subsystem=datasources,xa-data-source=DATASOURCENAME_Pool
具有所有配置属性的 MBean,但它不具有统计信息。根据这个线程,统计信息只暴露给管理 API(使用 JSON 导出的 http 访问)。
好的,在 Windows 或 Linux 上,您可以使用 Jboss cli(客户端界面)。这是在 JBOSS AS 7.1.3 上
在我的 Windows 框中,这就是我所做的(我的 jboss 主页是 C:\jboss-eap-6.0)
执行以下批处理文件
C:\jboss-eap-6.0\bin\jboss-cli.bat
它会带你到一个提示
[disconnected /]
您此时已断开连接。键入“connect”以连接到服务器,或键入“help”以获取支持的命令列表。现在输入连接。对于所有其他命令,请尝试帮助。这将允许您浏览 JMX 树(可能是我的术语可能是错误的)。
[disconnected /]connect
[standalone@rama-local:9999]
假设我的数据池名称是“OracleSampleDS”然后您可以使用以下命令查询统计信息
/subsystem=datasources/data-source=OracleSampleDS/statistics=pool:read-resource(include-runtime=true)
这是我得到的输出
{
"outcome" => "success",
"result" => {
"ActiveCount" => "0",
"AvailableCount" => "20",
"AverageBlockingTime" => "0",
"AverageCreationTime" => "0",
"CreatedCount" => "0",
"DestroyedCount" => "0",
"MaxCreationTime" => "0",
"MaxUsedCount" => "0",
"MaxWaitTime" => "0",
"TimedOut" => "0",
"TotalBlockingTime" => "0",
"TotalCreationTime" => "0"
}
}
如果您在 jboss 安装期间将主机名更改为 localhost 以外的任何内容,您可以编辑 jboss-cli.xml
我使用jboss-cl.sh在 linux 上尝试了相同的命令
如果您有单独的配置文件(主要是如果您使用域模式),请指定配置文件名称,如下所示。
/profile=full-ha/subsystem=datasources/data-source=OracleSampleDS/statistics=jdbc:read-resource(include-runtime=true)
这里我在域模式下使用的配置文件是“full-ha”
连接到 Jboss 命令行工具后,您可以使用一些命令,例如
(试试看)
还有
http://loclahost:9990/management/subsystem/datasources/data-source/OracleSampleDS/statistics/pool?include-runtime=true
我不同的端口请查看您的 hosts.xml(如果您使用域模式)或 Standalone.xml,通过检查查看您公开的管理端口查看http-interface security-realm="ManagementRealm"部分