您好,我嘗試監視哪個集羣oam服務器處於聯機和脫機狀態時出現問題我使用AccessClient類的getServerDiagnosticInfo()方法aSDK,但返回的Hashtable只包含Keys(服務器的名稱和端口)和包含另一個HashTable(ObKeyMapVal是HashTable的子類型)的值,但我認爲該對象必須包含健康狀況,服務器端口,服務器名稱和連接數如在API文檔提及,但當我打印的大小和它的內容僅輸出「0」,並且[](其爲空)如何知道某個OAM集羣中的哪個服務器在線或離線
片段:
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 是空的:真正的 屬性:[]
服務器:myserver2.com5575 數據:{} 大小:0 是空的:真正的 屬性:[]
感謝您的幫助!