in validator/validators/stress/stress_validator.go [333:366]
func (s *StressValidator) CheckData(startTime, endTime time.Time) error {
var (
multiErr error
ec2InstanceId = awsservice.GetInstanceId()
metricNamespace = s.vConfig.GetMetricNamespace()
validationMetric = s.vConfig.GetMetricValidation()
)
for _, metric := range validationMetric {
metricDimensions := []types.Dimension{
{
Name: aws.String("InstanceId"),
Value: aws.String(ec2InstanceId),
},
}
for _, dimension := range metric.MetricDimension {
metricDimensions = append(metricDimensions, types.Dimension{
Name: aws.String(dimension.Name),
Value: aws.String(dimension.Value),
})
}
var err error
if s.vConfig.GetOSFamily() == "windows" {
err = s.ValidateStressMetricWindows(metric.MetricName, metricNamespace, metricDimensions, metric.MetricSampleCount, startTime, endTime)
} else {
err = s.ValidateStressMetric(metric.MetricName, metricNamespace, metricDimensions, metric.MetricSampleCount, startTime, endTime)
}
if err != nil {
multiErr = multierr.Append(multiErr, err)
}
}
return multiErr
}