【发布时间】:2016-07-27 04:29:59
【问题描述】:
我想从 cassandra 中的 JMX 方法中检索列族列表。我正在使用 JMX 方法从 cassandra 检索数据。我能够检索键空间列表,但没有任何预定义的 mbean 来获取属于此键空间的列族列表。 我想知道是否有任何方法可以使用 JMX 或 JAVA 获取特定于键空间的列族列表。
【问题讨论】:
-
什么版本? mbean 名称随时间而变化
标签: cassandra
我想从 cassandra 中的 JMX 方法中检索列族列表。我正在使用 JMX 方法从 cassandra 检索数据。我能够检索键空间列表,但没有任何预定义的 mbean 来获取属于此键空间的列族列表。 我想知道是否有任何方法可以使用 JMX 或 JAVA 获取特定于键空间的列族列表。
【问题讨论】:
标签: cassandra
您可以在对象名称中使用通配符 (*) 来获取指定键空间中的列族列表,例如:
JMXConnector connector = JMXConnectorFactory.connect( url, env );
MBeanServerConnection mbsc = connector.getMBeanServerConnection();
ObjectName oName = new ObjectName( "org.apache.cassandra.db:type=ColumnFamilies,keyspace=your_keyspace,columnfamily=*" );
Set<ObjectName> names = mbsc.queryNames( oName, null);
Set<ObjectInstance> mbeans = mbsc.queryMBeans( oName, null );
所以name 将包含键空间中所有列失败的 jmx 名称,mbeans 将包含键空间中所有列族的 MBean。
JMX documentation 中有关名称模式的更多日期信息
【讨论】: