您好,当我尝试监视哪个集群 oam 服务器在线和离线时遇到问题我使用 aSDK 中 AccessClient 类的 getServerDiagnosticInfo() 方法,但返回的 Hashtable 仅包含密钥(服务器的名称和端口) 和包含另一个 HashTable 的值(ObKeyMapVal 是 HashTable 的子类型),但我认为该对象必须包含 API 文档中提到的运行状况、服务器端口、服务器名称和连接数,但是当我打印它的大小和内容时只打印“0”和[](它是空的)
片段:
try{
AccessClient ac = AccessClient.createDefaultInstance("/dir",AccessClient.CompatibilityMode.OAM_10G);
Hashtable info = ac.getServerDiagnosticInfo();
Set<?> servers = info.keySet();
Collection<?> serverInfo = info.values();
System.out.println("Num of servers: " + servers.size());
Iterator it = servers.iterator();
Object servidor = null;
Object dato = null;
while(it.hasNext()){
servidor = it.next();
System.out.println("Server: " + servidor);
dato = info.get(servidor);
System.out.println("Data: " + dato);
ObKeyValMap ob = (ObKeyValMap) dato;
System.out.println("Size: " + ob.keySet().size());
System.out.println("Is Empty: " + ob.keySet().isEmpty());
System.out.println("Properties: " + ob.keySet());
}
ac.shutdown();
} catch (oracle.security.am.asdk.AccessException e) {
e.printStackTrace();
} catch (Exception e){
e.printStackTrace();
}
并得到下一个输出:
服务器数量:2
服务器:myserver1.com5575 数据:{} 大小:0 为空:true 属性:[]
服务器:myserver2.com5575 数据:{} 大小:0 为空:true 属性:[]
谢谢你的帮助 !!!