我想从cassandra中的JMX方法中检索列族列表。我正在使用JMX方法从cassandra中检索数据。我能够检索键空间列表,但没有任何预定义的mbean来获取属于此键空间的列族列表。 我想知道是否有任何方法可以使用JMX或JAVA获取特定于键空间的列系列列表。
答案 0 :(得分:0)
您可以在对象名称中使用wildecard字符(*)来获取指定键空间中的列族列表,例如:
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。