Мне нужно получить среднесуточную статистику по данной ВМ.
ВМ работает на VMware vSphere 5.1. Я использую PHP и вызываю методы через SOAP.
Мой код выглядит так:
$result = $this
->soapClient
->QueryPerf( array(
'_this' => $this->serviceContent->perfManager,
'querySpec' => array(
'entity' => $object,
'startTime' => $startTime->format( 'c' ),
'intervalId' => 86400,
),
) );
Возвращенные результаты использования ЦП в процентах за интервал и использования памяти в процентах от общей настроенной или доступной памяти выглядят очень странно.
Результат процессора:
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,
)),
Единица процентов но ценность 349.
Результат памяти:
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,
)),
Блок также процентов но ценность 1193.
Другие значения имеют те же проблемы.
Вопросы:
Что я делаю неправильно?
Как получить достоверные результаты?
Замечания: эти результаты немного постформатированы, но на стороне клиента не выполняется никаких вычислений или других модификаций значений.
посмотрите на документы. Вы должны разделить процентное значение на 100, чтобы получить реальное процентное значение.
Других решений пока нет …