# Data Object - VsanPerfDiagnosticResult(vim.cluster.VsanPerfDiagnosticResult)

Returned by
  GetVsanPerfDiagnosisResult, VsanPerfDiagnose
Extends
  DynamicData
See also
  VsanPerfEntityMetricCSV
Since
  vSAN API 6.6

## Data Object Description

This data object type stores a performance diagnostic exception, relevant performance data, with a goal to help root cause a performance issue in a vSAN cluster. A performance diagnostic exception points to a possible reason due to which the vSAN cluster may be seeing poorer performance during the queried time interval. We raise an independent performance diagnostic exception for each issue that we find, and do _not_ group similar types of performance exceptions currently. It is left to the user (such as the UI), to do the grouping.

Properties

Name | Type | Description
--- | --- | ---
aggregationData* | VsanPerfEntityMetricCSV | A time series data that identifies the result of the aggregation applied to raw data returned by performance service. When this field is empty, it implies that no aggregation operation was performed for this exception. The entityRefId captures the unique entity type being aggregated. This could either be a single entity type, such as, capacity-disk, or it could be denoting a comparison between two entities, such as, cluster-domclient/diskgroup. The value field (VsanPerfMetricSeriesCSV) will contain the unique metricIds for which the aggregation is computed. Just like entityRefId, this could be a single metric, e.g. latencyRead, or a comparison between two metrics, such as throughputRead/iopsRead. The values field will contain the result of the aggregation operation in CSV.
aggregationFunction* | xsd:string | In case an aggregation is applied to raw performance service data, this field denotes the aggregation function. Examples are: spread, max, min, sum, compare, etc. If an aggregation is not applied, this field is empty.
exceptionData | VsanPerfEntityMetricCSV[] | An array of time series data that identifies why this performance exception was raised. When this array has multiple elements, aggregatedFunction will identify the aggregation function applied on the raw data to get the end result which identifies a performance exception. Each time series is of type VsanPerfEntityMetricCSV and is an independent cause of the performance exception. The entityRefId in VsanPerfEntityMetricCSV would refer to an entity type which is limiting performance, such as, a diskgroup. The values in VsanPerfEntityMetricCSV (VsanPerfMetricSeriesCSV) contain the metricId for which the exception was raised, and the values corresponding to the queried time.
exceptionId | xsd:string | The exception Id identifying a cause of poor performance. Use GetSupportedDiagnosticExceptions to get more details for the particular exceptionId
recommendation* | xsd:string | The recommendation message explaining what can be done to avoid this performance exception.
Properties inherited from DynamicData
None

*Need not be set
Show WSDL type definition
<complexType xmlns="http://www.w3.org/2001/XMLSchema" xmlns:vsan="urn:vsan" name="VsanPerfDiagnosticResult"> <complexContent> <extension base="vsan:DynamicData"> <sequence> <element name="exceptionId" type="xsd:string"/> <element name="recommendation" type="xsd:string" minOccurs="0"/> <element name="aggregationFunction" type="xsd:string" minOccurs="0"/> <element name="aggregationData" type="vsan:VsanPerfEntityMetricCSV" minOccurs="0"/> <element name="exceptionData" type="vsan:VsanPerfEntityMetricCSV" maxOccurs="unbounded"/> </sequence> </extension> </complexContent> </complexType>