<reponame>rhysmdnz/pulumi-alicloud-rhys-hacks// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***

using System;
using System.Collections.Generic;
using System.Collections.Immutable;
using System.Threading.Tasks;
using Pulumi.Serialization;

namespace Pulumi.AliCloud.Ga.Outputs
{

    [OutputType]
    public sealed class GetEndpointGroupsGroupResult
    {
        /// <summary>
        /// The description of the endpoint group.
        /// </summary>
        public readonly string Description;
        /// <summary>
        /// The endpointConfigurations of the endpoint group.
        /// </summary>
        public readonly ImmutableArray<Outputs.GetEndpointGroupsGroupEndpointConfigurationResult> EndpointConfigurations;
        /// <summary>
        /// The endpoint_group_id of the Endpoint Group.
        /// </summary>
        public readonly string EndpointGroupId;
        /// <summary>
        /// The ID of the region where the endpoint group is deployed.
        /// </summary>
        public readonly string EndpointGroupRegion;
        /// <summary>
        /// The interval between two consecutive health checks. Unit: seconds.
        /// </summary>
        public readonly int HealthCheckIntervalSeconds;
        /// <summary>
        /// The path specified as the destination of the targets for health checks.
        /// </summary>
        public readonly string HealthCheckPath;
        /// <summary>
        /// The port that is used for health checks.
        /// </summary>
        public readonly int HealthCheckPort;
        /// <summary>
        /// The protocol that is used to connect to the targets for health checks.
        /// </summary>
        public readonly string HealthCheckProtocol;
        /// <summary>
        /// The ID of the Endpoint Group.
        /// </summary>
        public readonly string Id;
        /// <summary>
        /// The ID of the listener that is associated with the endpoint group.
        /// </summary>
        public readonly string ListenerId;
        /// <summary>
        /// The name of the endpoint group.
        /// </summary>
        public readonly string Name;
        /// <summary>
        /// Mapping between listening port and forwarding port of boarding point.
        /// </summary>
        public readonly ImmutableArray<Outputs.GetEndpointGroupsGroupPortOverrideResult> PortOverrides;
        /// <summary>
        /// The status of the endpoint group.
        /// </summary>
        public readonly string Status;
        /// <summary>
        /// The number of consecutive failed heath checks that must occur before the endpoint is deemed unhealthy.
        /// </summary>
        public readonly int ThresholdCount;
        /// <summary>
        /// The weight of the endpoint group when the corresponding listener is associated with multiple endpoint groups.
        /// </summary>
        public readonly int TrafficPercentage;

        [OutputConstructor]
        private GetEndpointGroupsGroupResult(
            string description,

            ImmutableArray<Outputs.GetEndpointGroupsGroupEndpointConfigurationResult> endpointConfigurations,

            string endpointGroupId,

            string endpointGroupRegion,

            int healthCheckIntervalSeconds,

            string healthCheckPath,

            int healthCheckPort,

            string healthCheckProtocol,

            string id,

            string listenerId,

            string name,

            ImmutableArray<Outputs.GetEndpointGroupsGroupPortOverrideResult> portOverrides,

            string status,

            int thresholdCount,

            int trafficPercentage)
        {
            Description = description;
            EndpointConfigurations = endpointConfigurations;
            EndpointGroupId = endpointGroupId;
            EndpointGroupRegion = endpointGroupRegion;
            HealthCheckIntervalSeconds = healthCheckIntervalSeconds;
            HealthCheckPath = healthCheckPath;
            HealthCheckPort = healthCheckPort;
            HealthCheckProtocol = healthCheckProtocol;
            Id = id;
            ListenerId = listenerId;
            Name = name;
            PortOverrides = portOverrides;
            Status = status;
            ThresholdCount = thresholdCount;
            TrafficPercentage = trafficPercentage;
        }
    }
}
