Retrieving vSphere Performance Data
To retrieve collected data, your client application creates a query specification and passes the specification to a performance query method. The query specification is composed of one or more PerfQuerySpec objects. Each object identifies the following:
- Performance provider – managed entity for which the Server will return performance data (PerfQuerySpec.entity).
- Performance counters – PerfMetricId objects that identify performance counter instances (PerfQuerySpec.metricId).
- Performance interval – the sampling period that defines the data rollup (PerfQuerySpec.intervalId).
- Amount of data to be returned – start and end times (PerfQuerySpec.startTime, PerfQuerySpec.endTime) and maximum number of values (PerfQuerySpec.maxSample) to limit the amount of data to be returned.
- Output data format (PerfQuerySpec.format) – one of two kinds:
- Normal output returned as values contained in data objects.
- Formatted output returned as strings containing comma-separated values.
The combination of the entity and metricID properties determine the set of counters for which the server will return performance data. The combination of the interval, startTime, endTime properties produce instance, aggregated instance, rollup, or summarized data. The following table summarizes the different classifications of performance data that you can retrieve from a vCenter Server.
Performance Data | Description |
---|---|
Instance | ESXi Servers sample performance data every 20 seconds. 20-second interval data is called instance data or real-time data. To retrieve instance data, specify a value of 20 seconds for the PerfQuerySpec.intervalId property. |
Aggregated Instance | A vSphere client can
retrieve aggregated instance data. To obtain aggregated instance data, specify
the following
PerfQuerySpec
properties.
|
Rollup | The vCenter Server uses
the historical intervals to rollup performance data from the servers that it
manages. To retrieve historical performance data, specify the following
PerfQuerySpec
properties.
|
Summary | When you call the QueryPerf method and specify a performance interval (PerfQuerySpec.intervalId) that does not match one of the historical intervals (PerformanceManager.historicalInterval[].samplingPeriod), the Server will attempt to summarize the stored data for the specified interval. In this case, the Server may return values that are different from the values that were stored for the historical intervals. |