Hi Vmware group,
I am trying to collect Disk performance data of a ESX4.0 server using VI Perl toolkit (v 1.6). I want to collect this data through the Vcenter that is managing the ESX 4.0 host. This is the way I go about it:
1. Login to vcenter .
2. Get the ‘HostSystem’ entity view for the ESX host in question .
3. Query for Available performance metrics on the view obtained in #2
The output of #3 is something like this:
****Dump of PerfMetricId starts ******
$VAR1 = [
bless( {
'counterId' => '2',
'instance' => ''
}, 'PerfMetricId' ),
bless( {
'counterId' => '6',
'instance' => ''
}, 'PerfMetricId' ),
-
truncated
-
bless( {
'counterId' => '110',
'instance' => ''
}, 'PerfMetricId' ),
bless( {
'counterId' => '117',
'instance' => ''
}, 'PerfMetricId' )
];
****Dump of PerfMetricId ends ******
From the above output, it’s apparent that no valid instances were returned. However if I login to the ESX host directly (instead of going through vcenter), QueryAvailablePerfMetric() returns valid instances:
****Dump of PerfMetricId starts ******
$VAR1 = [
bless( {
'counterId' => '131092',
'instance' => 'naa.20000011c6810ab8'
}, 'PerfMetricId' ),
bless( {
'counterId' => '131090',
'instance' => 'naa.20000011c6816960'
}, 'PerfMetricId' ),
bless( {
'counterId' => '131092',
'instance' => 'naa.20000011c6810ac6'
}, 'PerfMetricId' ),
-
truncated
-
bless( {
'counterId' => '262153',
'instance' => 'host/system/vmkapimod'
}, 'PerfMetricId' ),
bless( {
'counterId' => '262157',
'instance' => 'host/system/helper'
}, 'PerfMetricId' )
];
****Dump of PerfMetricId ends ******
My question is:
Is this expected behavior for ESX 4.0?
Please note that I was able to get valid instances for a ESX4.1 host by querying through its vcenter.
Thanks,