Die Foren-SW läuft ohne erkennbare Probleme. Sollte doch etwas nicht funktionieren, bitte gerne hier jederzeit melden und wir kümmern uns zeitnah darum. Danke!

keine MemoryPerformance Daten über VC

Alles zum Virtualisierungsmanagement und Servermanagement, was nicht direkt in ein festes Version-Schema paßt.

Moderatoren: irix, continuum, Dayworker

Member
Beiträge: 4
Registriert: 27.10.2006, 09:19

keine MemoryPerformance Daten über VC

Beitragvon hornd_reaper » 01.12.2006, 10:05

Hi, ich verwende folgenden Code um die MemoryPerformance Daten über den VMA des VCs zu bekommen. Leider kriege ich keine Werte vom VMA. Hat einer vielleicht eine Idee was der Grund dafür ist? Ich verwenede ähnlichen Code für CPUPerf Daten. Da funktioniert es tadellos. Der Unterschied ist bloß im PerfStatType...

Code: Alles auswählen

        String hostPath="/vm/"+vmuid;
        String handle=serviceConnection.resolvePath("/perf/"+sampleint);
        String fromDateTime = datum + ", CET";
        PerfFilter sourceFilter = new PerfFilter();
        sourceFilter.setSpec(new PerfSourceType[1]);
        PerfSourceType s = new PerfSourceType();
        sourceFilter.setSpec(0, s);
        s.setKey(serviceConnection.resolvePath(hostPath));
        s.setSample(new PerfType[1]);
        PerfType t = new PerfType();
        s.setSample(0, t);
        t.setType(PerfStatType.memory);
        t.setDevice("0");
        DateFormat df = new SimpleDateFormat("MM/dd/yyyy HH:mm, z");
        Date chgDate = df.parse(fromDateTime);
        Calendar calDate = Calendar.getInstance();
        calDate.setTime(chgDate);
        com.vmware.vma.PerfCollector col = serviceConnection.queryPerfData(handle, calDate, samples, sourceFilter);
        PerfSource[] psource =col.getStats().getSource();
       
        for (int i=0;i<psource.length;i++){
            ViewContents vc= serviceConnection.getContents(psource[i].getKey());

            if(vc.getBody() instanceof VirtualMachine){
                //Host host = (Host) vc.getBody();
                VirtualMachine host=(VirtualMachine) vc.getBody();
               
                String hostName=host.getInfo().getName();
                System.out.println("Stats for Host: "+ hostName);
                parent.getOutput().append("\n Stats for Machine: "+ hostName);
                PerfSample[] sample = psource[i].getSample();


                for (int j=0; j<sample.length; j++){

                    PerfStat[] statsSample= sample[j].getStat();           

                    for (int k =0; k<statsSample.length; k++){
                        PerfStat stat = statsSample[k];
                       
                        PerfStatType statType= stat.getType();
                                       
                       
                        if(statType==PerfStatType.memory){
                           
                            MemoryPerf data= (MemoryPerf) stat.getData();

                                                       
                            System.out.println("MemoryPerf  "+((long)(data.getSize())/1024));
                           
                           
                        }
                       
                    }
                }
            }
        }
    }

Zurück zu „vCenter / VMware VirtualCenter“

Wer ist online?

Mitglieder in diesem Forum: Bing [Bot] und 1 Gast