Hi,

I've been trying to set the IPerformance collector interval via the webservice 
API and somehow have not been able to do so.  No exceptions are thrown and in 
fact, the responses are all as documented ... but still unable to set the 
interval.

As so often recommended, I looked closely at the way VBoxManage does it ... and 
I'm doing the same thing (well ... it sure seems like I am).

By setting the interval and samples using VBoxManage, I can retrieve all the 
expected performance data using the webservice and they report exactly the same 
values VBoxManage does.

The steps I am taking are:

1) Get the IPerformance handle from IVirtualBox::performanceCollector

2) Determine the statistics I want to collect (actually, I use the metricNames 
method on the IPerformance Handle object which
 retreives all the supported names)

3) Set the metrics using the IPerformance handle from step 1:  
Handle->setupMetrics.  I set the same period and count I use when doing this 
via VBoxManage.  I also pass the objects for the host and various selected VMs

4) I call enable metrics with the list of metrics I want to collect and the 
same list of objects for the host and selected VMs.

5) I then periodically call the queryMetricsData method of the performance 
handle  with the same list of metrics and objects for the selected VMs.

Unfortunately ... because it appears the period and count are not being set ... 
No data is ever returned.

NOTE: Leaving this running (meaning not restarting) .. and then going to the 
comand-line and using VBoxManage to set the period and count for the host and 
VMs of choice ... I am immediately able to get data and the data matches 
exactly the same reported by
 VBoxManage.

So ... I'm sure I must be missing something somewhere ... but I sure can't see 
it ...

Any suggestions or ideas?


Thanks,
Joe




      
_______________________________________________
vbox-dev mailing list
[email protected]
http://vbox.innotek.de/mailman/listinfo/vbox-dev

Reply via email to