func (engine *DockerStatsEngine) GetTaskHealthMetrics() (*ecstcs.HealthMetadata, []*ecstcs.TaskHealth, error) {
	var taskHealths []*ecstcs.TaskHealth
	metadata := &ecstcs.HealthMetadata{
		Cluster:           aws.String(engine.cluster),
		ContainerInstance: aws.String(engine.containerInstanceArn),
		MessageId:         aws.String(uuid.NewRandom().String()),
	}

	if !engine.containerHealthsToMonitor() {
		return metadata, taskHealths, nil
	}

	engine.lock.RLock()
	defer engine.lock.RUnlock()

	for taskARN := range engine.tasksToHealthCheckContainers {
		taskHealth := engine.getTaskHealthUnsafe(taskARN)
		if taskHealth == nil {
			continue
		}
		taskHealths = append(taskHealths, taskHealth)
	}

	if len(taskHealths) == 0 {
		return nil, nil, EmptyHealthMetricsError
	}

	return metadata, taskHealths, nil
}
func (engine *DockerStatsEngine) GetTaskHealthMetrics() (*ecstcs.HealthMetadata, []*ecstcs.TaskHealth, error) {
	var taskHealths []*ecstcs.TaskHealth
	metadata := &ecstcs.HealthMetadata{
		Cluster:           aws.String(engine.cluster),
		ContainerInstance: aws.String(engine.containerInstanceArn),
		MessageId:         aws.String(uuid.NewRandom().String()),
	}

	if !engine.containerHealthsToMonitor() {
		return metadata, taskHealths, nil
	}

	engine.lock.RLock()
	defer engine.lock.RUnlock()

	for taskARN := range engine.tasksToHealthCheckContainers {
		taskHealth := engine.getTaskHealthUnsafe(taskARN)
		if taskHealth == nil {
			continue
		}
		taskHealths = append(taskHealths, taskHealth)
	}

	if len(taskHealths) == 0 {
		return nil, nil, EmptyHealthMetricsError
	}

	return metadata, taskHealths, nil
}
func ( engine * DockerStatsEngine ) GetTaskHealthMetrics ( ) ( * ecstcs . HealthMetadata , [ ] * ecstcs . TaskHealth , error ) { var taskHealths [ ] * ecstcs . TaskHealth metadata := & ecstcs . HealthMetadata { Cluster : aws . String ( engine . cluster ) , ContainerInstance : aws . String ( engine . containerInstanceArn ) , MessageId : aws . String ( uuid . NewRandom ( ) . String ( ) ) , } if ! engine . containerHealthsToMonitor ( ) { return metadata , taskHealths , nil } engine . lock . RLock ( ) defer engine . lock . RUnlock ( ) for taskARN := range engine . tasksToHealthCheckContainers { taskHealth := engine . getTaskHealthUnsafe ( taskARN ) if taskHealth == nil { continue } taskHealths = append ( taskHealths , taskHealth ) } if len ( taskHealths ) == 0 { return nil , nil , EmptyHealthMetricsError } return metadata , taskHealths , nil }
// GetTaskHealthMetrics returns the container health metrics
GetTaskHealthMetrics returns the container health metrics