I need to get average daily statistics for given VM. VM runs on VMware vSphere 5.1. I use PHP and call methods through SOAP.
My code looks like this:
$result = $this
->soapClient
->QueryPerf( array(
'_this' => $this->serviceContent->perfManager,
'querySpec' => array(
'entity' => $object,
'startTime' => $startTime->format( 'c' ),
'intervalId' => 86400,
),
) );
Returned results for CPU usage as a percentage during the interval and memory usage as percentage of total configured or available memory look very strange.
CPU result:
stdClass::__set_state(array(
'groupInfo' =>
stdClass::__set_state(array(
'label' => 'CPU',
'summary' => 'CPU',
'key' => 'cpu',
)),
'nameInfo' =>
stdClass::__set_state(array(
'label' => 'Usage',
'summary' => 'CPU usage as a percentage during the interval',
'key' => 'usage',
)),
'rollupType' => 'average',
'statsType' => 'rate',
'unitInfo' =>
stdClass::__set_state(array(
'label' => 'Percent',
'summary' => 'Percentage',
'key' => 'percent',
)),
'instance' => '',
'value' => 349,
)),
The unit is percent but the value is 349.
Memory result:
stdClass::__set_state(array(
'groupInfo' =>
stdClass::__set_state(array(
'label' => 'Memory',
'summary' => 'Memory',
'key' => 'mem',
)),
'nameInfo' =>
stdClass::__set_state(array(
'label' => 'Usage',
'summary' => 'Memory usage as percentage of total configured or available memory',
'key' => 'usage',
)),
'rollupType' => 'average',
'statsType' => 'absolute',
'unitInfo' =>
stdClass::__set_state(array(
'label' => 'Percent',
'summary' => 'Percentage',
'key' => 'percent',
)),
'instance' => '',
'value' => 1193,
)),
The unit is also percent but the value is 1193.
The other values have the same issues.
Questions: What am I doing wrong? How to get valid results?
Note: these results are slightly postformatted, but no calculations or other modifications of values are performed on the client side.