Interface ClusterOrBuilder

  • All Superinterfaces:
    com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder
    All Known Implementing Classes:
    Cluster, Cluster.Builder

    public interface ClusterOrBuilder
    extends com.google.protobuf.MessageOrBuilder
    • Method Detail

      • getTransportSocketMatchesList

        List<Cluster.TransportSocketMatch> getTransportSocketMatchesList()
         Configuration to use different transport sockets for different endpoints.
         The entry of *envoy.transport_socket_match* in the
         :ref:`LbEndpoint.Metadata <envoy_api_field_endpoint.LbEndpoint.metadata>`
         is used to match against the transport sockets as they appear in the list. The first
         :ref:`match <envoy_api_msg_Cluster.TransportSocketMatch>` is used.
         For example, with the following match
         .. code-block:: yaml
          transport_socket_matches:
          - name: "enableMTLS"
            match:
              acceptMTLS: true
            transport_socket:
              name: envoy.transport_sockets.tls
              config: { ... } # tls socket configuration
          - name: "defaultToPlaintext"
            match: {}
            transport_socket:
              name: envoy.transport_sockets.raw_buffer
         Connections to the endpoints whose metadata value under *envoy.transport_socket_match*
         having "acceptMTLS"/"true" key/value pair use the "enableMTLS" socket configuration.
         If a :ref:`socket match <envoy_api_msg_Cluster.TransportSocketMatch>` with empty match
         criteria is provided, that always match any endpoint. For example, the "defaultToPlaintext"
         socket match in case above.
         If an endpoint metadata's value under *envoy.transport_socket_match* does not match any
         *TransportSocketMatch*, socket configuration fallbacks to use the *tls_context* or
         *transport_socket* specified in this cluster.
         This field allows gradual and flexible transport socket configuration changes.
         The metadata of endpoints in EDS can indicate transport socket capabilities. For example,
         an endpoint's metadata can have two key value pairs as "acceptMTLS": "true",
         "acceptPlaintext": "true". While some other endpoints, only accepting plaintext traffic
         has "acceptPlaintext": "true" metadata information.
         Then the xDS server can configure the CDS to a client, Envoy A, to send mutual TLS
         traffic for endpoints with "acceptMTLS": "true", by adding a corresponding
         *TransportSocketMatch* in this field. Other client Envoys receive CDS without
         *transport_socket_match* set, and still send plain text traffic to the same cluster.
         [#comment:TODO(incfly): add a detailed architecture doc on intended usage.]
         
        repeated .envoy.api.v2.Cluster.TransportSocketMatch transport_socket_matches = 43;
      • getTransportSocketMatches

        Cluster.TransportSocketMatch getTransportSocketMatches​(int index)
         Configuration to use different transport sockets for different endpoints.
         The entry of *envoy.transport_socket_match* in the
         :ref:`LbEndpoint.Metadata <envoy_api_field_endpoint.LbEndpoint.metadata>`
         is used to match against the transport sockets as they appear in the list. The first
         :ref:`match <envoy_api_msg_Cluster.TransportSocketMatch>` is used.
         For example, with the following match
         .. code-block:: yaml
          transport_socket_matches:
          - name: "enableMTLS"
            match:
              acceptMTLS: true
            transport_socket:
              name: envoy.transport_sockets.tls
              config: { ... } # tls socket configuration
          - name: "defaultToPlaintext"
            match: {}
            transport_socket:
              name: envoy.transport_sockets.raw_buffer
         Connections to the endpoints whose metadata value under *envoy.transport_socket_match*
         having "acceptMTLS"/"true" key/value pair use the "enableMTLS" socket configuration.
         If a :ref:`socket match <envoy_api_msg_Cluster.TransportSocketMatch>` with empty match
         criteria is provided, that always match any endpoint. For example, the "defaultToPlaintext"
         socket match in case above.
         If an endpoint metadata's value under *envoy.transport_socket_match* does not match any
         *TransportSocketMatch*, socket configuration fallbacks to use the *tls_context* or
         *transport_socket* specified in this cluster.
         This field allows gradual and flexible transport socket configuration changes.
         The metadata of endpoints in EDS can indicate transport socket capabilities. For example,
         an endpoint's metadata can have two key value pairs as "acceptMTLS": "true",
         "acceptPlaintext": "true". While some other endpoints, only accepting plaintext traffic
         has "acceptPlaintext": "true" metadata information.
         Then the xDS server can configure the CDS to a client, Envoy A, to send mutual TLS
         traffic for endpoints with "acceptMTLS": "true", by adding a corresponding
         *TransportSocketMatch* in this field. Other client Envoys receive CDS without
         *transport_socket_match* set, and still send plain text traffic to the same cluster.
         [#comment:TODO(incfly): add a detailed architecture doc on intended usage.]
         
        repeated .envoy.api.v2.Cluster.TransportSocketMatch transport_socket_matches = 43;
      • getTransportSocketMatchesCount

        int getTransportSocketMatchesCount()
         Configuration to use different transport sockets for different endpoints.
         The entry of *envoy.transport_socket_match* in the
         :ref:`LbEndpoint.Metadata <envoy_api_field_endpoint.LbEndpoint.metadata>`
         is used to match against the transport sockets as they appear in the list. The first
         :ref:`match <envoy_api_msg_Cluster.TransportSocketMatch>` is used.
         For example, with the following match
         .. code-block:: yaml
          transport_socket_matches:
          - name: "enableMTLS"
            match:
              acceptMTLS: true
            transport_socket:
              name: envoy.transport_sockets.tls
              config: { ... } # tls socket configuration
          - name: "defaultToPlaintext"
            match: {}
            transport_socket:
              name: envoy.transport_sockets.raw_buffer
         Connections to the endpoints whose metadata value under *envoy.transport_socket_match*
         having "acceptMTLS"/"true" key/value pair use the "enableMTLS" socket configuration.
         If a :ref:`socket match <envoy_api_msg_Cluster.TransportSocketMatch>` with empty match
         criteria is provided, that always match any endpoint. For example, the "defaultToPlaintext"
         socket match in case above.
         If an endpoint metadata's value under *envoy.transport_socket_match* does not match any
         *TransportSocketMatch*, socket configuration fallbacks to use the *tls_context* or
         *transport_socket* specified in this cluster.
         This field allows gradual and flexible transport socket configuration changes.
         The metadata of endpoints in EDS can indicate transport socket capabilities. For example,
         an endpoint's metadata can have two key value pairs as "acceptMTLS": "true",
         "acceptPlaintext": "true". While some other endpoints, only accepting plaintext traffic
         has "acceptPlaintext": "true" metadata information.
         Then the xDS server can configure the CDS to a client, Envoy A, to send mutual TLS
         traffic for endpoints with "acceptMTLS": "true", by adding a corresponding
         *TransportSocketMatch* in this field. Other client Envoys receive CDS without
         *transport_socket_match* set, and still send plain text traffic to the same cluster.
         [#comment:TODO(incfly): add a detailed architecture doc on intended usage.]
         
        repeated .envoy.api.v2.Cluster.TransportSocketMatch transport_socket_matches = 43;
      • getTransportSocketMatchesOrBuilderList

        List<? extends Cluster.TransportSocketMatchOrBuilder> getTransportSocketMatchesOrBuilderList()
         Configuration to use different transport sockets for different endpoints.
         The entry of *envoy.transport_socket_match* in the
         :ref:`LbEndpoint.Metadata <envoy_api_field_endpoint.LbEndpoint.metadata>`
         is used to match against the transport sockets as they appear in the list. The first
         :ref:`match <envoy_api_msg_Cluster.TransportSocketMatch>` is used.
         For example, with the following match
         .. code-block:: yaml
          transport_socket_matches:
          - name: "enableMTLS"
            match:
              acceptMTLS: true
            transport_socket:
              name: envoy.transport_sockets.tls
              config: { ... } # tls socket configuration
          - name: "defaultToPlaintext"
            match: {}
            transport_socket:
              name: envoy.transport_sockets.raw_buffer
         Connections to the endpoints whose metadata value under *envoy.transport_socket_match*
         having "acceptMTLS"/"true" key/value pair use the "enableMTLS" socket configuration.
         If a :ref:`socket match <envoy_api_msg_Cluster.TransportSocketMatch>` with empty match
         criteria is provided, that always match any endpoint. For example, the "defaultToPlaintext"
         socket match in case above.
         If an endpoint metadata's value under *envoy.transport_socket_match* does not match any
         *TransportSocketMatch*, socket configuration fallbacks to use the *tls_context* or
         *transport_socket* specified in this cluster.
         This field allows gradual and flexible transport socket configuration changes.
         The metadata of endpoints in EDS can indicate transport socket capabilities. For example,
         an endpoint's metadata can have two key value pairs as "acceptMTLS": "true",
         "acceptPlaintext": "true". While some other endpoints, only accepting plaintext traffic
         has "acceptPlaintext": "true" metadata information.
         Then the xDS server can configure the CDS to a client, Envoy A, to send mutual TLS
         traffic for endpoints with "acceptMTLS": "true", by adding a corresponding
         *TransportSocketMatch* in this field. Other client Envoys receive CDS without
         *transport_socket_match* set, and still send plain text traffic to the same cluster.
         [#comment:TODO(incfly): add a detailed architecture doc on intended usage.]
         
        repeated .envoy.api.v2.Cluster.TransportSocketMatch transport_socket_matches = 43;
      • getTransportSocketMatchesOrBuilder

        Cluster.TransportSocketMatchOrBuilder getTransportSocketMatchesOrBuilder​(int index)
         Configuration to use different transport sockets for different endpoints.
         The entry of *envoy.transport_socket_match* in the
         :ref:`LbEndpoint.Metadata <envoy_api_field_endpoint.LbEndpoint.metadata>`
         is used to match against the transport sockets as they appear in the list. The first
         :ref:`match <envoy_api_msg_Cluster.TransportSocketMatch>` is used.
         For example, with the following match
         .. code-block:: yaml
          transport_socket_matches:
          - name: "enableMTLS"
            match:
              acceptMTLS: true
            transport_socket:
              name: envoy.transport_sockets.tls
              config: { ... } # tls socket configuration
          - name: "defaultToPlaintext"
            match: {}
            transport_socket:
              name: envoy.transport_sockets.raw_buffer
         Connections to the endpoints whose metadata value under *envoy.transport_socket_match*
         having "acceptMTLS"/"true" key/value pair use the "enableMTLS" socket configuration.
         If a :ref:`socket match <envoy_api_msg_Cluster.TransportSocketMatch>` with empty match
         criteria is provided, that always match any endpoint. For example, the "defaultToPlaintext"
         socket match in case above.
         If an endpoint metadata's value under *envoy.transport_socket_match* does not match any
         *TransportSocketMatch*, socket configuration fallbacks to use the *tls_context* or
         *transport_socket* specified in this cluster.
         This field allows gradual and flexible transport socket configuration changes.
         The metadata of endpoints in EDS can indicate transport socket capabilities. For example,
         an endpoint's metadata can have two key value pairs as "acceptMTLS": "true",
         "acceptPlaintext": "true". While some other endpoints, only accepting plaintext traffic
         has "acceptPlaintext": "true" metadata information.
         Then the xDS server can configure the CDS to a client, Envoy A, to send mutual TLS
         traffic for endpoints with "acceptMTLS": "true", by adding a corresponding
         *TransportSocketMatch* in this field. Other client Envoys receive CDS without
         *transport_socket_match* set, and still send plain text traffic to the same cluster.
         [#comment:TODO(incfly): add a detailed architecture doc on intended usage.]
         
        repeated .envoy.api.v2.Cluster.TransportSocketMatch transport_socket_matches = 43;
      • getName

        String getName()
         Supplies the name of the cluster which must be unique across all clusters.
         The cluster name is used when emitting
         :ref:`statistics <config_cluster_manager_cluster_stats>` if :ref:`alt_stat_name
         <envoy_api_field_Cluster.alt_stat_name>` is not provided.
         Any ``:`` in the cluster name will be converted to ``_`` when emitting statistics.
         
        string name = 1 [(.validate.rules) = { ... }
        Returns:
        The name.
      • getNameBytes

        com.google.protobuf.ByteString getNameBytes()
         Supplies the name of the cluster which must be unique across all clusters.
         The cluster name is used when emitting
         :ref:`statistics <config_cluster_manager_cluster_stats>` if :ref:`alt_stat_name
         <envoy_api_field_Cluster.alt_stat_name>` is not provided.
         Any ``:`` in the cluster name will be converted to ``_`` when emitting statistics.
         
        string name = 1 [(.validate.rules) = { ... }
        Returns:
        The bytes for name.
      • getAltStatName

        String getAltStatName()
         An optional alternative to the cluster name to be used while emitting stats.
         Any ``:`` in the name will be converted to ``_`` when emitting statistics. This should not be
         confused with :ref:`Router Filter Header
         <config_http_filters_router_x-envoy-upstream-alt-stat-name>`.
         
        string alt_stat_name = 28;
        Returns:
        The altStatName.
      • getAltStatNameBytes

        com.google.protobuf.ByteString getAltStatNameBytes()
         An optional alternative to the cluster name to be used while emitting stats.
         Any ``:`` in the name will be converted to ``_`` when emitting statistics. This should not be
         confused with :ref:`Router Filter Header
         <config_http_filters_router_x-envoy-upstream-alt-stat-name>`.
         
        string alt_stat_name = 28;
        Returns:
        The bytes for altStatName.
      • hasType

        boolean hasType()
         The :ref:`service discovery type <arch_overview_service_discovery_types>`
         to use for resolving the cluster.
         
        .envoy.api.v2.Cluster.DiscoveryType type = 2 [(.validate.rules) = { ... }
        Returns:
        Whether the type field is set.
      • getTypeValue

        int getTypeValue()
         The :ref:`service discovery type <arch_overview_service_discovery_types>`
         to use for resolving the cluster.
         
        .envoy.api.v2.Cluster.DiscoveryType type = 2 [(.validate.rules) = { ... }
        Returns:
        The enum numeric value on the wire for type.
      • getType

        Cluster.DiscoveryType getType()
         The :ref:`service discovery type <arch_overview_service_discovery_types>`
         to use for resolving the cluster.
         
        .envoy.api.v2.Cluster.DiscoveryType type = 2 [(.validate.rules) = { ... }
        Returns:
        The type.
      • hasClusterType

        boolean hasClusterType()
         The custom cluster type.
         
        .envoy.api.v2.Cluster.CustomClusterType cluster_type = 38;
        Returns:
        Whether the clusterType field is set.
      • getClusterType

        Cluster.CustomClusterType getClusterType()
         The custom cluster type.
         
        .envoy.api.v2.Cluster.CustomClusterType cluster_type = 38;
        Returns:
        The clusterType.
      • getClusterTypeOrBuilder

        Cluster.CustomClusterTypeOrBuilder getClusterTypeOrBuilder()
         The custom cluster type.
         
        .envoy.api.v2.Cluster.CustomClusterType cluster_type = 38;
      • hasEdsClusterConfig

        boolean hasEdsClusterConfig()
         Configuration to use for EDS updates for the Cluster.
         
        .envoy.api.v2.Cluster.EdsClusterConfig eds_cluster_config = 3;
        Returns:
        Whether the edsClusterConfig field is set.
      • getEdsClusterConfig

        Cluster.EdsClusterConfig getEdsClusterConfig()
         Configuration to use for EDS updates for the Cluster.
         
        .envoy.api.v2.Cluster.EdsClusterConfig eds_cluster_config = 3;
        Returns:
        The edsClusterConfig.
      • getEdsClusterConfigOrBuilder

        Cluster.EdsClusterConfigOrBuilder getEdsClusterConfigOrBuilder()
         Configuration to use for EDS updates for the Cluster.
         
        .envoy.api.v2.Cluster.EdsClusterConfig eds_cluster_config = 3;
      • hasConnectTimeout

        boolean hasConnectTimeout()
         The timeout for new network connections to hosts in the cluster.
         
        .google.protobuf.Duration connect_timeout = 4 [(.validate.rules) = { ... }
        Returns:
        Whether the connectTimeout field is set.
      • getConnectTimeout

        com.google.protobuf.Duration getConnectTimeout()
         The timeout for new network connections to hosts in the cluster.
         
        .google.protobuf.Duration connect_timeout = 4 [(.validate.rules) = { ... }
        Returns:
        The connectTimeout.
      • getConnectTimeoutOrBuilder

        com.google.protobuf.DurationOrBuilder getConnectTimeoutOrBuilder()
         The timeout for new network connections to hosts in the cluster.
         
        .google.protobuf.Duration connect_timeout = 4 [(.validate.rules) = { ... }
      • hasPerConnectionBufferLimitBytes

        boolean hasPerConnectionBufferLimitBytes()
         Soft limit on size of the cluster’s connections read and write buffers. If
         unspecified, an implementation defined default is applied (1MiB).
         
        .google.protobuf.UInt32Value per_connection_buffer_limit_bytes = 5;
        Returns:
        Whether the perConnectionBufferLimitBytes field is set.
      • getPerConnectionBufferLimitBytes

        com.google.protobuf.UInt32Value getPerConnectionBufferLimitBytes()
         Soft limit on size of the cluster’s connections read and write buffers. If
         unspecified, an implementation defined default is applied (1MiB).
         
        .google.protobuf.UInt32Value per_connection_buffer_limit_bytes = 5;
        Returns:
        The perConnectionBufferLimitBytes.
      • getPerConnectionBufferLimitBytesOrBuilder

        com.google.protobuf.UInt32ValueOrBuilder getPerConnectionBufferLimitBytesOrBuilder()
         Soft limit on size of the cluster’s connections read and write buffers. If
         unspecified, an implementation defined default is applied (1MiB).
         
        .google.protobuf.UInt32Value per_connection_buffer_limit_bytes = 5;
      • getLbPolicyValue

        int getLbPolicyValue()
         The :ref:`load balancer type <arch_overview_load_balancing_types>` to use
         when picking a host in the cluster.
         
        .envoy.api.v2.Cluster.LbPolicy lb_policy = 6 [(.validate.rules) = { ... }
        Returns:
        The enum numeric value on the wire for lbPolicy.
      • getLbPolicy

        Cluster.LbPolicy getLbPolicy()
         The :ref:`load balancer type <arch_overview_load_balancing_types>` to use
         when picking a host in the cluster.
         
        .envoy.api.v2.Cluster.LbPolicy lb_policy = 6 [(.validate.rules) = { ... }
        Returns:
        The lbPolicy.
      • getHostsList

        @Deprecated
        List<Address> getHostsList()
        Deprecated.
         If the service discovery type is
         :ref:`STATIC<envoy_api_enum_value_Cluster.DiscoveryType.STATIC>`,
         :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`
         or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
         then hosts is required.
         .. attention::
           **This field is deprecated**. Set the
           :ref:`load_assignment<envoy_api_field_Cluster.load_assignment>` field instead.
         
        repeated .envoy.api.v2.core.Address hosts = 7 [deprecated = true];
      • getHosts

        @Deprecated
        Address getHosts​(int index)
        Deprecated.
         If the service discovery type is
         :ref:`STATIC<envoy_api_enum_value_Cluster.DiscoveryType.STATIC>`,
         :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`
         or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
         then hosts is required.
         .. attention::
           **This field is deprecated**. Set the
           :ref:`load_assignment<envoy_api_field_Cluster.load_assignment>` field instead.
         
        repeated .envoy.api.v2.core.Address hosts = 7 [deprecated = true];
      • getHostsCount

        @Deprecated
        int getHostsCount()
        Deprecated.
         If the service discovery type is
         :ref:`STATIC<envoy_api_enum_value_Cluster.DiscoveryType.STATIC>`,
         :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`
         or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
         then hosts is required.
         .. attention::
           **This field is deprecated**. Set the
           :ref:`load_assignment<envoy_api_field_Cluster.load_assignment>` field instead.
         
        repeated .envoy.api.v2.core.Address hosts = 7 [deprecated = true];
      • getHostsOrBuilderList

        @Deprecated
        List<? extends AddressOrBuilder> getHostsOrBuilderList()
        Deprecated.
         If the service discovery type is
         :ref:`STATIC<envoy_api_enum_value_Cluster.DiscoveryType.STATIC>`,
         :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`
         or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
         then hosts is required.
         .. attention::
           **This field is deprecated**. Set the
           :ref:`load_assignment<envoy_api_field_Cluster.load_assignment>` field instead.
         
        repeated .envoy.api.v2.core.Address hosts = 7 [deprecated = true];
      • getHostsOrBuilder

        @Deprecated
        AddressOrBuilder getHostsOrBuilder​(int index)
        Deprecated.
         If the service discovery type is
         :ref:`STATIC<envoy_api_enum_value_Cluster.DiscoveryType.STATIC>`,
         :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`
         or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
         then hosts is required.
         .. attention::
           **This field is deprecated**. Set the
           :ref:`load_assignment<envoy_api_field_Cluster.load_assignment>` field instead.
         
        repeated .envoy.api.v2.core.Address hosts = 7 [deprecated = true];
      • hasLoadAssignment

        boolean hasLoadAssignment()
         Setting this is required for specifying members of
         :ref:`STATIC<envoy_api_enum_value_Cluster.DiscoveryType.STATIC>`,
         :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`
         or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>` clusters.
         This field supersedes the *hosts* field in the v2 API.
         .. attention::
           Setting this allows non-EDS cluster types to contain embedded EDS equivalent
           :ref:`endpoint assignments<envoy_api_msg_ClusterLoadAssignment>`.
         
        .envoy.api.v2.ClusterLoadAssignment load_assignment = 33;
        Returns:
        Whether the loadAssignment field is set.
      • getLoadAssignment

        ClusterLoadAssignment getLoadAssignment()
         Setting this is required for specifying members of
         :ref:`STATIC<envoy_api_enum_value_Cluster.DiscoveryType.STATIC>`,
         :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`
         or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>` clusters.
         This field supersedes the *hosts* field in the v2 API.
         .. attention::
           Setting this allows non-EDS cluster types to contain embedded EDS equivalent
           :ref:`endpoint assignments<envoy_api_msg_ClusterLoadAssignment>`.
         
        .envoy.api.v2.ClusterLoadAssignment load_assignment = 33;
        Returns:
        The loadAssignment.
      • getLoadAssignmentOrBuilder

        ClusterLoadAssignmentOrBuilder getLoadAssignmentOrBuilder()
         Setting this is required for specifying members of
         :ref:`STATIC<envoy_api_enum_value_Cluster.DiscoveryType.STATIC>`,
         :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`
         or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>` clusters.
         This field supersedes the *hosts* field in the v2 API.
         .. attention::
           Setting this allows non-EDS cluster types to contain embedded EDS equivalent
           :ref:`endpoint assignments<envoy_api_msg_ClusterLoadAssignment>`.
         
        .envoy.api.v2.ClusterLoadAssignment load_assignment = 33;
      • getHealthChecksList

        List<HealthCheck> getHealthChecksList()
         Optional :ref:`active health checking <arch_overview_health_checking>`
         configuration for the cluster. If no
         configuration is specified no health checking will be done and all cluster
         members will be considered healthy at all times.
         
        repeated .envoy.api.v2.core.HealthCheck health_checks = 8;
      • getHealthChecks

        HealthCheck getHealthChecks​(int index)
         Optional :ref:`active health checking <arch_overview_health_checking>`
         configuration for the cluster. If no
         configuration is specified no health checking will be done and all cluster
         members will be considered healthy at all times.
         
        repeated .envoy.api.v2.core.HealthCheck health_checks = 8;
      • getHealthChecksCount

        int getHealthChecksCount()
         Optional :ref:`active health checking <arch_overview_health_checking>`
         configuration for the cluster. If no
         configuration is specified no health checking will be done and all cluster
         members will be considered healthy at all times.
         
        repeated .envoy.api.v2.core.HealthCheck health_checks = 8;
      • getHealthChecksOrBuilderList

        List<? extends HealthCheckOrBuilder> getHealthChecksOrBuilderList()
         Optional :ref:`active health checking <arch_overview_health_checking>`
         configuration for the cluster. If no
         configuration is specified no health checking will be done and all cluster
         members will be considered healthy at all times.
         
        repeated .envoy.api.v2.core.HealthCheck health_checks = 8;
      • getHealthChecksOrBuilder

        HealthCheckOrBuilder getHealthChecksOrBuilder​(int index)
         Optional :ref:`active health checking <arch_overview_health_checking>`
         configuration for the cluster. If no
         configuration is specified no health checking will be done and all cluster
         members will be considered healthy at all times.
         
        repeated .envoy.api.v2.core.HealthCheck health_checks = 8;
      • hasMaxRequestsPerConnection

        boolean hasMaxRequestsPerConnection()
         Optional maximum requests for a single upstream connection. This parameter
         is respected by both the HTTP/1.1 and HTTP/2 connection pool
         implementations. If not specified, there is no limit. Setting this
         parameter to 1 will effectively disable keep alive.
         
        .google.protobuf.UInt32Value max_requests_per_connection = 9;
        Returns:
        Whether the maxRequestsPerConnection field is set.
      • getMaxRequestsPerConnection

        com.google.protobuf.UInt32Value getMaxRequestsPerConnection()
         Optional maximum requests for a single upstream connection. This parameter
         is respected by both the HTTP/1.1 and HTTP/2 connection pool
         implementations. If not specified, there is no limit. Setting this
         parameter to 1 will effectively disable keep alive.
         
        .google.protobuf.UInt32Value max_requests_per_connection = 9;
        Returns:
        The maxRequestsPerConnection.
      • getMaxRequestsPerConnectionOrBuilder

        com.google.protobuf.UInt32ValueOrBuilder getMaxRequestsPerConnectionOrBuilder()
         Optional maximum requests for a single upstream connection. This parameter
         is respected by both the HTTP/1.1 and HTTP/2 connection pool
         implementations. If not specified, there is no limit. Setting this
         parameter to 1 will effectively disable keep alive.
         
        .google.protobuf.UInt32Value max_requests_per_connection = 9;
      • hasCircuitBreakers

        boolean hasCircuitBreakers()
         Optional :ref:`circuit breaking <arch_overview_circuit_break>` for the cluster.
         
        .envoy.api.v2.cluster.CircuitBreakers circuit_breakers = 10;
        Returns:
        Whether the circuitBreakers field is set.
      • getCircuitBreakers

        CircuitBreakers getCircuitBreakers()
         Optional :ref:`circuit breaking <arch_overview_circuit_break>` for the cluster.
         
        .envoy.api.v2.cluster.CircuitBreakers circuit_breakers = 10;
        Returns:
        The circuitBreakers.
      • getCircuitBreakersOrBuilder

        CircuitBreakersOrBuilder getCircuitBreakersOrBuilder()
         Optional :ref:`circuit breaking <arch_overview_circuit_break>` for the cluster.
         
        .envoy.api.v2.cluster.CircuitBreakers circuit_breakers = 10;
      • hasTlsContext

        @Deprecated
        boolean hasTlsContext()
        Deprecated.
        envoy.api.v2.Cluster.tls_context is deprecated. See envoy/api/v2/cluster.proto;l=607
         The TLS configuration for connections to the upstream cluster.
         .. attention::
           **This field is deprecated**. Use `transport_socket` with name `tls` instead. If both are
           set, `transport_socket` takes priority.
         
        .envoy.api.v2.auth.UpstreamTlsContext tls_context = 11 [deprecated = true, (.envoy.annotations.disallowed_by_default) = true];
        Returns:
        Whether the tlsContext field is set.
      • getTlsContext

        @Deprecated
        UpstreamTlsContext getTlsContext()
        Deprecated.
        envoy.api.v2.Cluster.tls_context is deprecated. See envoy/api/v2/cluster.proto;l=607
         The TLS configuration for connections to the upstream cluster.
         .. attention::
           **This field is deprecated**. Use `transport_socket` with name `tls` instead. If both are
           set, `transport_socket` takes priority.
         
        .envoy.api.v2.auth.UpstreamTlsContext tls_context = 11 [deprecated = true, (.envoy.annotations.disallowed_by_default) = true];
        Returns:
        The tlsContext.
      • getTlsContextOrBuilder

        @Deprecated
        UpstreamTlsContextOrBuilder getTlsContextOrBuilder()
        Deprecated.
         The TLS configuration for connections to the upstream cluster.
         .. attention::
           **This field is deprecated**. Use `transport_socket` with name `tls` instead. If both are
           set, `transport_socket` takes priority.
         
        .envoy.api.v2.auth.UpstreamTlsContext tls_context = 11 [deprecated = true, (.envoy.annotations.disallowed_by_default) = true];
      • hasUpstreamHttpProtocolOptions

        boolean hasUpstreamHttpProtocolOptions()
         HTTP protocol options that are applied only to upstream HTTP connections.
         These options apply to all HTTP versions.
         
        .envoy.api.v2.core.UpstreamHttpProtocolOptions upstream_http_protocol_options = 46;
        Returns:
        Whether the upstreamHttpProtocolOptions field is set.
      • getUpstreamHttpProtocolOptions

        UpstreamHttpProtocolOptions getUpstreamHttpProtocolOptions()
         HTTP protocol options that are applied only to upstream HTTP connections.
         These options apply to all HTTP versions.
         
        .envoy.api.v2.core.UpstreamHttpProtocolOptions upstream_http_protocol_options = 46;
        Returns:
        The upstreamHttpProtocolOptions.
      • getUpstreamHttpProtocolOptionsOrBuilder

        UpstreamHttpProtocolOptionsOrBuilder getUpstreamHttpProtocolOptionsOrBuilder()
         HTTP protocol options that are applied only to upstream HTTP connections.
         These options apply to all HTTP versions.
         
        .envoy.api.v2.core.UpstreamHttpProtocolOptions upstream_http_protocol_options = 46;
      • hasCommonHttpProtocolOptions

        boolean hasCommonHttpProtocolOptions()
         Additional options when handling HTTP requests upstream. These options will be applicable to
         both HTTP1 and HTTP2 requests.
         
        .envoy.api.v2.core.HttpProtocolOptions common_http_protocol_options = 29;
        Returns:
        Whether the commonHttpProtocolOptions field is set.
      • getCommonHttpProtocolOptions

        HttpProtocolOptions getCommonHttpProtocolOptions()
         Additional options when handling HTTP requests upstream. These options will be applicable to
         both HTTP1 and HTTP2 requests.
         
        .envoy.api.v2.core.HttpProtocolOptions common_http_protocol_options = 29;
        Returns:
        The commonHttpProtocolOptions.
      • getCommonHttpProtocolOptionsOrBuilder

        HttpProtocolOptionsOrBuilder getCommonHttpProtocolOptionsOrBuilder()
         Additional options when handling HTTP requests upstream. These options will be applicable to
         both HTTP1 and HTTP2 requests.
         
        .envoy.api.v2.core.HttpProtocolOptions common_http_protocol_options = 29;
      • hasHttpProtocolOptions

        boolean hasHttpProtocolOptions()
         Additional options when handling HTTP1 requests.
         
        .envoy.api.v2.core.Http1ProtocolOptions http_protocol_options = 13;
        Returns:
        Whether the httpProtocolOptions field is set.
      • getHttpProtocolOptions

        Http1ProtocolOptions getHttpProtocolOptions()
         Additional options when handling HTTP1 requests.
         
        .envoy.api.v2.core.Http1ProtocolOptions http_protocol_options = 13;
        Returns:
        The httpProtocolOptions.
      • getHttpProtocolOptionsOrBuilder

        Http1ProtocolOptionsOrBuilder getHttpProtocolOptionsOrBuilder()
         Additional options when handling HTTP1 requests.
         
        .envoy.api.v2.core.Http1ProtocolOptions http_protocol_options = 13;
      • hasHttp2ProtocolOptions

        boolean hasHttp2ProtocolOptions()
         Even if default HTTP2 protocol options are desired, this field must be
         set so that Envoy will assume that the upstream supports HTTP/2 when
         making new HTTP connection pool connections. Currently, Envoy only
         supports prior knowledge for upstream connections. Even if TLS is used
         with ALPN, `http2_protocol_options` must be specified. As an aside this allows HTTP/2
         connections to happen over plain text.
         
        .envoy.api.v2.core.Http2ProtocolOptions http2_protocol_options = 14;
        Returns:
        Whether the http2ProtocolOptions field is set.
      • getHttp2ProtocolOptions

        Http2ProtocolOptions getHttp2ProtocolOptions()
         Even if default HTTP2 protocol options are desired, this field must be
         set so that Envoy will assume that the upstream supports HTTP/2 when
         making new HTTP connection pool connections. Currently, Envoy only
         supports prior knowledge for upstream connections. Even if TLS is used
         with ALPN, `http2_protocol_options` must be specified. As an aside this allows HTTP/2
         connections to happen over plain text.
         
        .envoy.api.v2.core.Http2ProtocolOptions http2_protocol_options = 14;
        Returns:
        The http2ProtocolOptions.
      • getHttp2ProtocolOptionsOrBuilder

        Http2ProtocolOptionsOrBuilder getHttp2ProtocolOptionsOrBuilder()
         Even if default HTTP2 protocol options are desired, this field must be
         set so that Envoy will assume that the upstream supports HTTP/2 when
         making new HTTP connection pool connections. Currently, Envoy only
         supports prior knowledge for upstream connections. Even if TLS is used
         with ALPN, `http2_protocol_options` must be specified. As an aside this allows HTTP/2
         connections to happen over plain text.
         
        .envoy.api.v2.core.Http2ProtocolOptions http2_protocol_options = 14;
      • getExtensionProtocolOptionsCount

        @Deprecated
        int getExtensionProtocolOptionsCount()
        Deprecated.
         The extension_protocol_options field is used to provide extension-specific protocol options
         for upstream connections. The key should match the extension filter name, such as
         "envoy.filters.network.thrift_proxy". See the extension's documentation for details on
         specific options.
         
        map<string, .google.protobuf.Struct> extension_protocol_options = 35 [deprecated = true, (.envoy.annotations.disallowed_by_default) = true];
      • containsExtensionProtocolOptions

        @Deprecated
        boolean containsExtensionProtocolOptions​(String key)
        Deprecated.
         The extension_protocol_options field is used to provide extension-specific protocol options
         for upstream connections. The key should match the extension filter name, such as
         "envoy.filters.network.thrift_proxy". See the extension's documentation for details on
         specific options.
         
        map<string, .google.protobuf.Struct> extension_protocol_options = 35 [deprecated = true, (.envoy.annotations.disallowed_by_default) = true];
      • getExtensionProtocolOptionsMap

        @Deprecated
        Map<String,​com.google.protobuf.Struct> getExtensionProtocolOptionsMap()
        Deprecated.
         The extension_protocol_options field is used to provide extension-specific protocol options
         for upstream connections. The key should match the extension filter name, such as
         "envoy.filters.network.thrift_proxy". See the extension's documentation for details on
         specific options.
         
        map<string, .google.protobuf.Struct> extension_protocol_options = 35 [deprecated = true, (.envoy.annotations.disallowed_by_default) = true];
      • getExtensionProtocolOptionsOrDefault

        @Deprecated
        com.google.protobuf.Struct getExtensionProtocolOptionsOrDefault​(String key,
                                                                        com.google.protobuf.Struct defaultValue)
        Deprecated.
         The extension_protocol_options field is used to provide extension-specific protocol options
         for upstream connections. The key should match the extension filter name, such as
         "envoy.filters.network.thrift_proxy". See the extension's documentation for details on
         specific options.
         
        map<string, .google.protobuf.Struct> extension_protocol_options = 35 [deprecated = true, (.envoy.annotations.disallowed_by_default) = true];
      • getExtensionProtocolOptionsOrThrow

        @Deprecated
        com.google.protobuf.Struct getExtensionProtocolOptionsOrThrow​(String key)
        Deprecated.
         The extension_protocol_options field is used to provide extension-specific protocol options
         for upstream connections. The key should match the extension filter name, such as
         "envoy.filters.network.thrift_proxy". See the extension's documentation for details on
         specific options.
         
        map<string, .google.protobuf.Struct> extension_protocol_options = 35 [deprecated = true, (.envoy.annotations.disallowed_by_default) = true];
      • getTypedExtensionProtocolOptionsCount

        int getTypedExtensionProtocolOptionsCount()
         The extension_protocol_options field is used to provide extension-specific protocol options
         for upstream connections. The key should match the extension filter name, such as
         "envoy.filters.network.thrift_proxy". See the extension's documentation for details on
         specific options.
         
        map<string, .google.protobuf.Any> typed_extension_protocol_options = 36;
      • containsTypedExtensionProtocolOptions

        boolean containsTypedExtensionProtocolOptions​(String key)
         The extension_protocol_options field is used to provide extension-specific protocol options
         for upstream connections. The key should match the extension filter name, such as
         "envoy.filters.network.thrift_proxy". See the extension's documentation for details on
         specific options.
         
        map<string, .google.protobuf.Any> typed_extension_protocol_options = 36;
      • getTypedExtensionProtocolOptionsMap

        Map<String,​com.google.protobuf.Any> getTypedExtensionProtocolOptionsMap()
         The extension_protocol_options field is used to provide extension-specific protocol options
         for upstream connections. The key should match the extension filter name, such as
         "envoy.filters.network.thrift_proxy". See the extension's documentation for details on
         specific options.
         
        map<string, .google.protobuf.Any> typed_extension_protocol_options = 36;
      • getTypedExtensionProtocolOptionsOrDefault

        com.google.protobuf.Any getTypedExtensionProtocolOptionsOrDefault​(String key,
                                                                          com.google.protobuf.Any defaultValue)
         The extension_protocol_options field is used to provide extension-specific protocol options
         for upstream connections. The key should match the extension filter name, such as
         "envoy.filters.network.thrift_proxy". See the extension's documentation for details on
         specific options.
         
        map<string, .google.protobuf.Any> typed_extension_protocol_options = 36;
      • getTypedExtensionProtocolOptionsOrThrow

        com.google.protobuf.Any getTypedExtensionProtocolOptionsOrThrow​(String key)
         The extension_protocol_options field is used to provide extension-specific protocol options
         for upstream connections. The key should match the extension filter name, such as
         "envoy.filters.network.thrift_proxy". See the extension's documentation for details on
         specific options.
         
        map<string, .google.protobuf.Any> typed_extension_protocol_options = 36;
      • hasDnsRefreshRate

        boolean hasDnsRefreshRate()
         If the DNS refresh rate is specified and the cluster type is either
         :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`,
         or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
         this value is used as the cluster’s DNS refresh
         rate. The value configured must be at least 1ms. If this setting is not specified, the
         value defaults to 5000ms. For cluster types other than
         :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`
         and :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`
         this setting is ignored.
         
        .google.protobuf.Duration dns_refresh_rate = 16 [(.validate.rules) = { ... }
        Returns:
        Whether the dnsRefreshRate field is set.
      • getDnsRefreshRate

        com.google.protobuf.Duration getDnsRefreshRate()
         If the DNS refresh rate is specified and the cluster type is either
         :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`,
         or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
         this value is used as the cluster’s DNS refresh
         rate. The value configured must be at least 1ms. If this setting is not specified, the
         value defaults to 5000ms. For cluster types other than
         :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`
         and :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`
         this setting is ignored.
         
        .google.protobuf.Duration dns_refresh_rate = 16 [(.validate.rules) = { ... }
        Returns:
        The dnsRefreshRate.
      • getDnsRefreshRateOrBuilder

        com.google.protobuf.DurationOrBuilder getDnsRefreshRateOrBuilder()
         If the DNS refresh rate is specified and the cluster type is either
         :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`,
         or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
         this value is used as the cluster’s DNS refresh
         rate. The value configured must be at least 1ms. If this setting is not specified, the
         value defaults to 5000ms. For cluster types other than
         :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`
         and :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`
         this setting is ignored.
         
        .google.protobuf.Duration dns_refresh_rate = 16 [(.validate.rules) = { ... }
      • hasDnsFailureRefreshRate

        boolean hasDnsFailureRefreshRate()
         If the DNS failure refresh rate is specified and the cluster type is either
         :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`,
         or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
         this is used as the cluster’s DNS refresh rate when requests are failing. If this setting is
         not specified, the failure refresh rate defaults to the DNS refresh rate. For cluster types
         other than :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>` and
         :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>` this setting is
         ignored.
         
        .envoy.api.v2.Cluster.RefreshRate dns_failure_refresh_rate = 44;
        Returns:
        Whether the dnsFailureRefreshRate field is set.
      • getDnsFailureRefreshRate

        Cluster.RefreshRate getDnsFailureRefreshRate()
         If the DNS failure refresh rate is specified and the cluster type is either
         :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`,
         or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
         this is used as the cluster’s DNS refresh rate when requests are failing. If this setting is
         not specified, the failure refresh rate defaults to the DNS refresh rate. For cluster types
         other than :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>` and
         :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>` this setting is
         ignored.
         
        .envoy.api.v2.Cluster.RefreshRate dns_failure_refresh_rate = 44;
        Returns:
        The dnsFailureRefreshRate.
      • getDnsFailureRefreshRateOrBuilder

        Cluster.RefreshRateOrBuilder getDnsFailureRefreshRateOrBuilder()
         If the DNS failure refresh rate is specified and the cluster type is either
         :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`,
         or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
         this is used as the cluster’s DNS refresh rate when requests are failing. If this setting is
         not specified, the failure refresh rate defaults to the DNS refresh rate. For cluster types
         other than :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>` and
         :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>` this setting is
         ignored.
         
        .envoy.api.v2.Cluster.RefreshRate dns_failure_refresh_rate = 44;
      • getRespectDnsTtl

        boolean getRespectDnsTtl()
         Optional configuration for setting cluster's DNS refresh rate. If the value is set to true,
         cluster's DNS refresh rate will be set to resource record's TTL which comes from DNS
         resolution.
         
        bool respect_dns_ttl = 39;
        Returns:
        The respectDnsTtl.
      • getDnsLookupFamilyValue

        int getDnsLookupFamilyValue()
         The DNS IP address resolution policy. If this setting is not specified, the
         value defaults to
         :ref:`AUTO<envoy_api_enum_value_Cluster.DnsLookupFamily.AUTO>`.
         
        .envoy.api.v2.Cluster.DnsLookupFamily dns_lookup_family = 17 [(.validate.rules) = { ... }
        Returns:
        The enum numeric value on the wire for dnsLookupFamily.
      • getDnsLookupFamily

        Cluster.DnsLookupFamily getDnsLookupFamily()
         The DNS IP address resolution policy. If this setting is not specified, the
         value defaults to
         :ref:`AUTO<envoy_api_enum_value_Cluster.DnsLookupFamily.AUTO>`.
         
        .envoy.api.v2.Cluster.DnsLookupFamily dns_lookup_family = 17 [(.validate.rules) = { ... }
        Returns:
        The dnsLookupFamily.
      • getDnsResolversList

        List<Address> getDnsResolversList()
         If DNS resolvers are specified and the cluster type is either
         :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`,
         or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
         this value is used to specify the cluster’s dns resolvers.
         If this setting is not specified, the value defaults to the default
         resolver, which uses /etc/resolv.conf for configuration. For cluster types
         other than
         :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`
         and :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`
         this setting is ignored.
         Setting this value causes failure if the
         ``envoy.restart_features.use_apple_api_for_dns_lookups`` runtime value is true during
         server startup. Apple's API only allows overriding DNS resolvers via system settings.
         
        repeated .envoy.api.v2.core.Address dns_resolvers = 18;
      • getDnsResolvers

        Address getDnsResolvers​(int index)
         If DNS resolvers are specified and the cluster type is either
         :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`,
         or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
         this value is used to specify the cluster’s dns resolvers.
         If this setting is not specified, the value defaults to the default
         resolver, which uses /etc/resolv.conf for configuration. For cluster types
         other than
         :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`
         and :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`
         this setting is ignored.
         Setting this value causes failure if the
         ``envoy.restart_features.use_apple_api_for_dns_lookups`` runtime value is true during
         server startup. Apple's API only allows overriding DNS resolvers via system settings.
         
        repeated .envoy.api.v2.core.Address dns_resolvers = 18;
      • getDnsResolversCount

        int getDnsResolversCount()
         If DNS resolvers are specified and the cluster type is either
         :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`,
         or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
         this value is used to specify the cluster’s dns resolvers.
         If this setting is not specified, the value defaults to the default
         resolver, which uses /etc/resolv.conf for configuration. For cluster types
         other than
         :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`
         and :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`
         this setting is ignored.
         Setting this value causes failure if the
         ``envoy.restart_features.use_apple_api_for_dns_lookups`` runtime value is true during
         server startup. Apple's API only allows overriding DNS resolvers via system settings.
         
        repeated .envoy.api.v2.core.Address dns_resolvers = 18;
      • getDnsResolversOrBuilderList

        List<? extends AddressOrBuilder> getDnsResolversOrBuilderList()
         If DNS resolvers are specified and the cluster type is either
         :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`,
         or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
         this value is used to specify the cluster’s dns resolvers.
         If this setting is not specified, the value defaults to the default
         resolver, which uses /etc/resolv.conf for configuration. For cluster types
         other than
         :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`
         and :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`
         this setting is ignored.
         Setting this value causes failure if the
         ``envoy.restart_features.use_apple_api_for_dns_lookups`` runtime value is true during
         server startup. Apple's API only allows overriding DNS resolvers via system settings.
         
        repeated .envoy.api.v2.core.Address dns_resolvers = 18;
      • getDnsResolversOrBuilder

        AddressOrBuilder getDnsResolversOrBuilder​(int index)
         If DNS resolvers are specified and the cluster type is either
         :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`,
         or :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`,
         this value is used to specify the cluster’s dns resolvers.
         If this setting is not specified, the value defaults to the default
         resolver, which uses /etc/resolv.conf for configuration. For cluster types
         other than
         :ref:`STRICT_DNS<envoy_api_enum_value_Cluster.DiscoveryType.STRICT_DNS>`
         and :ref:`LOGICAL_DNS<envoy_api_enum_value_Cluster.DiscoveryType.LOGICAL_DNS>`
         this setting is ignored.
         Setting this value causes failure if the
         ``envoy.restart_features.use_apple_api_for_dns_lookups`` runtime value is true during
         server startup. Apple's API only allows overriding DNS resolvers via system settings.
         
        repeated .envoy.api.v2.core.Address dns_resolvers = 18;
      • getUseTcpForDnsLookups

        boolean getUseTcpForDnsLookups()
         [#next-major-version: Reconcile DNS options in a single message.]
         Always use TCP queries instead of UDP queries for DNS lookups.
         Setting this value causes failure if the
         ``envoy.restart_features.use_apple_api_for_dns_lookups`` runtime value is true during
         server startup. Apple' API only uses UDP for DNS resolution.
         
        bool use_tcp_for_dns_lookups = 45;
        Returns:
        The useTcpForDnsLookups.
      • hasOutlierDetection

        boolean hasOutlierDetection()
         If specified, outlier detection will be enabled for this upstream cluster.
         Each of the configuration values can be overridden via
         :ref:`runtime values <config_cluster_manager_cluster_runtime_outlier_detection>`.
         
        .envoy.api.v2.cluster.OutlierDetection outlier_detection = 19;
        Returns:
        Whether the outlierDetection field is set.
      • getOutlierDetection

        OutlierDetection getOutlierDetection()
         If specified, outlier detection will be enabled for this upstream cluster.
         Each of the configuration values can be overridden via
         :ref:`runtime values <config_cluster_manager_cluster_runtime_outlier_detection>`.
         
        .envoy.api.v2.cluster.OutlierDetection outlier_detection = 19;
        Returns:
        The outlierDetection.
      • getOutlierDetectionOrBuilder

        OutlierDetectionOrBuilder getOutlierDetectionOrBuilder()
         If specified, outlier detection will be enabled for this upstream cluster.
         Each of the configuration values can be overridden via
         :ref:`runtime values <config_cluster_manager_cluster_runtime_outlier_detection>`.
         
        .envoy.api.v2.cluster.OutlierDetection outlier_detection = 19;
      • hasCleanupInterval

        boolean hasCleanupInterval()
         The interval for removing stale hosts from a cluster type
         :ref:`ORIGINAL_DST<envoy_api_enum_value_Cluster.DiscoveryType.ORIGINAL_DST>`.
         Hosts are considered stale if they have not been used
         as upstream destinations during this interval. New hosts are added
         to original destination clusters on demand as new connections are
         redirected to Envoy, causing the number of hosts in the cluster to
         grow over time. Hosts that are not stale (they are actively used as
         destinations) are kept in the cluster, which allows connections to
         them remain open, saving the latency that would otherwise be spent
         on opening new connections. If this setting is not specified, the
         value defaults to 5000ms. For cluster types other than
         :ref:`ORIGINAL_DST<envoy_api_enum_value_Cluster.DiscoveryType.ORIGINAL_DST>`
         this setting is ignored.
         
        .google.protobuf.Duration cleanup_interval = 20 [(.validate.rules) = { ... }
        Returns:
        Whether the cleanupInterval field is set.
      • getCleanupInterval

        com.google.protobuf.Duration getCleanupInterval()
         The interval for removing stale hosts from a cluster type
         :ref:`ORIGINAL_DST<envoy_api_enum_value_Cluster.DiscoveryType.ORIGINAL_DST>`.
         Hosts are considered stale if they have not been used
         as upstream destinations during this interval. New hosts are added
         to original destination clusters on demand as new connections are
         redirected to Envoy, causing the number of hosts in the cluster to
         grow over time. Hosts that are not stale (they are actively used as
         destinations) are kept in the cluster, which allows connections to
         them remain open, saving the latency that would otherwise be spent
         on opening new connections. If this setting is not specified, the
         value defaults to 5000ms. For cluster types other than
         :ref:`ORIGINAL_DST<envoy_api_enum_value_Cluster.DiscoveryType.ORIGINAL_DST>`
         this setting is ignored.
         
        .google.protobuf.Duration cleanup_interval = 20 [(.validate.rules) = { ... }
        Returns:
        The cleanupInterval.
      • getCleanupIntervalOrBuilder

        com.google.protobuf.DurationOrBuilder getCleanupIntervalOrBuilder()
         The interval for removing stale hosts from a cluster type
         :ref:`ORIGINAL_DST<envoy_api_enum_value_Cluster.DiscoveryType.ORIGINAL_DST>`.
         Hosts are considered stale if they have not been used
         as upstream destinations during this interval. New hosts are added
         to original destination clusters on demand as new connections are
         redirected to Envoy, causing the number of hosts in the cluster to
         grow over time. Hosts that are not stale (they are actively used as
         destinations) are kept in the cluster, which allows connections to
         them remain open, saving the latency that would otherwise be spent
         on opening new connections. If this setting is not specified, the
         value defaults to 5000ms. For cluster types other than
         :ref:`ORIGINAL_DST<envoy_api_enum_value_Cluster.DiscoveryType.ORIGINAL_DST>`
         this setting is ignored.
         
        .google.protobuf.Duration cleanup_interval = 20 [(.validate.rules) = { ... }
      • hasUpstreamBindConfig

        boolean hasUpstreamBindConfig()
         Optional configuration used to bind newly established upstream connections.
         This overrides any bind_config specified in the bootstrap proto.
         If the address and port are empty, no bind will be performed.
         
        .envoy.api.v2.core.BindConfig upstream_bind_config = 21;
        Returns:
        Whether the upstreamBindConfig field is set.
      • getUpstreamBindConfig

        BindConfig getUpstreamBindConfig()
         Optional configuration used to bind newly established upstream connections.
         This overrides any bind_config specified in the bootstrap proto.
         If the address and port are empty, no bind will be performed.
         
        .envoy.api.v2.core.BindConfig upstream_bind_config = 21;
        Returns:
        The upstreamBindConfig.
      • getUpstreamBindConfigOrBuilder

        BindConfigOrBuilder getUpstreamBindConfigOrBuilder()
         Optional configuration used to bind newly established upstream connections.
         This overrides any bind_config specified in the bootstrap proto.
         If the address and port are empty, no bind will be performed.
         
        .envoy.api.v2.core.BindConfig upstream_bind_config = 21;
      • hasLbSubsetConfig

        boolean hasLbSubsetConfig()
         Configuration for load balancing subsetting.
         
        .envoy.api.v2.Cluster.LbSubsetConfig lb_subset_config = 22;
        Returns:
        Whether the lbSubsetConfig field is set.
      • getLbSubsetConfig

        Cluster.LbSubsetConfig getLbSubsetConfig()
         Configuration for load balancing subsetting.
         
        .envoy.api.v2.Cluster.LbSubsetConfig lb_subset_config = 22;
        Returns:
        The lbSubsetConfig.
      • getLbSubsetConfigOrBuilder

        Cluster.LbSubsetConfigOrBuilder getLbSubsetConfigOrBuilder()
         Configuration for load balancing subsetting.
         
        .envoy.api.v2.Cluster.LbSubsetConfig lb_subset_config = 22;
      • hasRingHashLbConfig

        boolean hasRingHashLbConfig()
         Optional configuration for the Ring Hash load balancing policy.
         
        .envoy.api.v2.Cluster.RingHashLbConfig ring_hash_lb_config = 23;
        Returns:
        Whether the ringHashLbConfig field is set.
      • getRingHashLbConfig

        Cluster.RingHashLbConfig getRingHashLbConfig()
         Optional configuration for the Ring Hash load balancing policy.
         
        .envoy.api.v2.Cluster.RingHashLbConfig ring_hash_lb_config = 23;
        Returns:
        The ringHashLbConfig.
      • getRingHashLbConfigOrBuilder

        Cluster.RingHashLbConfigOrBuilder getRingHashLbConfigOrBuilder()
         Optional configuration for the Ring Hash load balancing policy.
         
        .envoy.api.v2.Cluster.RingHashLbConfig ring_hash_lb_config = 23;
      • hasOriginalDstLbConfig

        boolean hasOriginalDstLbConfig()
         Optional configuration for the Original Destination load balancing policy.
         
        .envoy.api.v2.Cluster.OriginalDstLbConfig original_dst_lb_config = 34;
        Returns:
        Whether the originalDstLbConfig field is set.
      • getOriginalDstLbConfig

        Cluster.OriginalDstLbConfig getOriginalDstLbConfig()
         Optional configuration for the Original Destination load balancing policy.
         
        .envoy.api.v2.Cluster.OriginalDstLbConfig original_dst_lb_config = 34;
        Returns:
        The originalDstLbConfig.
      • getOriginalDstLbConfigOrBuilder

        Cluster.OriginalDstLbConfigOrBuilder getOriginalDstLbConfigOrBuilder()
         Optional configuration for the Original Destination load balancing policy.
         
        .envoy.api.v2.Cluster.OriginalDstLbConfig original_dst_lb_config = 34;
      • hasLeastRequestLbConfig

        boolean hasLeastRequestLbConfig()
         Optional configuration for the LeastRequest load balancing policy.
         
        .envoy.api.v2.Cluster.LeastRequestLbConfig least_request_lb_config = 37;
        Returns:
        Whether the leastRequestLbConfig field is set.
      • getLeastRequestLbConfig

        Cluster.LeastRequestLbConfig getLeastRequestLbConfig()
         Optional configuration for the LeastRequest load balancing policy.
         
        .envoy.api.v2.Cluster.LeastRequestLbConfig least_request_lb_config = 37;
        Returns:
        The leastRequestLbConfig.
      • getLeastRequestLbConfigOrBuilder

        Cluster.LeastRequestLbConfigOrBuilder getLeastRequestLbConfigOrBuilder()
         Optional configuration for the LeastRequest load balancing policy.
         
        .envoy.api.v2.Cluster.LeastRequestLbConfig least_request_lb_config = 37;
      • hasCommonLbConfig

        boolean hasCommonLbConfig()
         Common configuration for all load balancer implementations.
         
        .envoy.api.v2.Cluster.CommonLbConfig common_lb_config = 27;
        Returns:
        Whether the commonLbConfig field is set.
      • getCommonLbConfig

        Cluster.CommonLbConfig getCommonLbConfig()
         Common configuration for all load balancer implementations.
         
        .envoy.api.v2.Cluster.CommonLbConfig common_lb_config = 27;
        Returns:
        The commonLbConfig.
      • getCommonLbConfigOrBuilder

        Cluster.CommonLbConfigOrBuilder getCommonLbConfigOrBuilder()
         Common configuration for all load balancer implementations.
         
        .envoy.api.v2.Cluster.CommonLbConfig common_lb_config = 27;
      • hasTransportSocket

        boolean hasTransportSocket()
         Optional custom transport socket implementation to use for upstream connections.
         To setup TLS, set a transport socket with name `tls` and
         :ref:`UpstreamTlsContexts <envoy_api_msg_auth.UpstreamTlsContext>` in the `typed_config`.
         If no transport socket configuration is specified, new connections
         will be set up with plaintext.
         
        .envoy.api.v2.core.TransportSocket transport_socket = 24;
        Returns:
        Whether the transportSocket field is set.
      • getTransportSocket

        TransportSocket getTransportSocket()
         Optional custom transport socket implementation to use for upstream connections.
         To setup TLS, set a transport socket with name `tls` and
         :ref:`UpstreamTlsContexts <envoy_api_msg_auth.UpstreamTlsContext>` in the `typed_config`.
         If no transport socket configuration is specified, new connections
         will be set up with plaintext.
         
        .envoy.api.v2.core.TransportSocket transport_socket = 24;
        Returns:
        The transportSocket.
      • getTransportSocketOrBuilder

        TransportSocketOrBuilder getTransportSocketOrBuilder()
         Optional custom transport socket implementation to use for upstream connections.
         To setup TLS, set a transport socket with name `tls` and
         :ref:`UpstreamTlsContexts <envoy_api_msg_auth.UpstreamTlsContext>` in the `typed_config`.
         If no transport socket configuration is specified, new connections
         will be set up with plaintext.
         
        .envoy.api.v2.core.TransportSocket transport_socket = 24;
      • hasMetadata

        boolean hasMetadata()
         The Metadata field can be used to provide additional information about the
         cluster. It can be used for stats, logging, and varying filter behavior.
         Fields should use reverse DNS notation to denote which entity within Envoy
         will need the information. For instance, if the metadata is intended for
         the Router filter, the filter name should be specified as *envoy.filters.http.router*.
         
        .envoy.api.v2.core.Metadata metadata = 25;
        Returns:
        Whether the metadata field is set.
      • getMetadata

        Metadata getMetadata()
         The Metadata field can be used to provide additional information about the
         cluster. It can be used for stats, logging, and varying filter behavior.
         Fields should use reverse DNS notation to denote which entity within Envoy
         will need the information. For instance, if the metadata is intended for
         the Router filter, the filter name should be specified as *envoy.filters.http.router*.
         
        .envoy.api.v2.core.Metadata metadata = 25;
        Returns:
        The metadata.
      • getMetadataOrBuilder

        MetadataOrBuilder getMetadataOrBuilder()
         The Metadata field can be used to provide additional information about the
         cluster. It can be used for stats, logging, and varying filter behavior.
         Fields should use reverse DNS notation to denote which entity within Envoy
         will need the information. For instance, if the metadata is intended for
         the Router filter, the filter name should be specified as *envoy.filters.http.router*.
         
        .envoy.api.v2.core.Metadata metadata = 25;
      • getProtocolSelectionValue

        int getProtocolSelectionValue()
         Determines how Envoy selects the protocol used to speak to upstream hosts.
         
        .envoy.api.v2.Cluster.ClusterProtocolSelection protocol_selection = 26;
        Returns:
        The enum numeric value on the wire for protocolSelection.
      • getProtocolSelection

        Cluster.ClusterProtocolSelection getProtocolSelection()
         Determines how Envoy selects the protocol used to speak to upstream hosts.
         
        .envoy.api.v2.Cluster.ClusterProtocolSelection protocol_selection = 26;
        Returns:
        The protocolSelection.
      • hasUpstreamConnectionOptions

        boolean hasUpstreamConnectionOptions()
         Optional options for upstream connections.
         
        .envoy.api.v2.UpstreamConnectionOptions upstream_connection_options = 30;
        Returns:
        Whether the upstreamConnectionOptions field is set.
      • getUpstreamConnectionOptions

        UpstreamConnectionOptions getUpstreamConnectionOptions()
         Optional options for upstream connections.
         
        .envoy.api.v2.UpstreamConnectionOptions upstream_connection_options = 30;
        Returns:
        The upstreamConnectionOptions.
      • getUpstreamConnectionOptionsOrBuilder

        UpstreamConnectionOptionsOrBuilder getUpstreamConnectionOptionsOrBuilder()
         Optional options for upstream connections.
         
        .envoy.api.v2.UpstreamConnectionOptions upstream_connection_options = 30;
      • getCloseConnectionsOnHostHealthFailure

        boolean getCloseConnectionsOnHostHealthFailure()
         If an upstream host becomes unhealthy (as determined by the configured health checks
         or outlier detection), immediately close all connections to the failed host.
         .. note::
           This is currently only supported for connections created by tcp_proxy.
         .. note::
           The current implementation of this feature closes all connections immediately when
           the unhealthy status is detected. If there are a large number of connections open
           to an upstream host that becomes unhealthy, Envoy may spend a substantial amount of
           time exclusively closing these connections, and not processing any other traffic.
         
        bool close_connections_on_host_health_failure = 31;
        Returns:
        The closeConnectionsOnHostHealthFailure.
      • getDrainConnectionsOnHostRemoval

        boolean getDrainConnectionsOnHostRemoval()
         If set to true, Envoy will ignore the health value of a host when processing its removal
         from service discovery. This means that if active health checking is used, Envoy will *not*
         wait for the endpoint to go unhealthy before removing it.
         
        bool drain_connections_on_host_removal = 32 [(.udpa.annotations.field_migrate) = { ... }
        Returns:
        The drainConnectionsOnHostRemoval.
      • getFiltersList

        List<Filter> getFiltersList()
         An (optional) network filter chain, listed in the order the filters should be applied.
         The chain will be applied to all outgoing connections that Envoy makes to the upstream
         servers of this cluster.
         
        repeated .envoy.api.v2.cluster.Filter filters = 40;
      • getFilters

        Filter getFilters​(int index)
         An (optional) network filter chain, listed in the order the filters should be applied.
         The chain will be applied to all outgoing connections that Envoy makes to the upstream
         servers of this cluster.
         
        repeated .envoy.api.v2.cluster.Filter filters = 40;
      • getFiltersCount

        int getFiltersCount()
         An (optional) network filter chain, listed in the order the filters should be applied.
         The chain will be applied to all outgoing connections that Envoy makes to the upstream
         servers of this cluster.
         
        repeated .envoy.api.v2.cluster.Filter filters = 40;
      • getFiltersOrBuilderList

        List<? extends FilterOrBuilder> getFiltersOrBuilderList()
         An (optional) network filter chain, listed in the order the filters should be applied.
         The chain will be applied to all outgoing connections that Envoy makes to the upstream
         servers of this cluster.
         
        repeated .envoy.api.v2.cluster.Filter filters = 40;
      • getFiltersOrBuilder

        FilterOrBuilder getFiltersOrBuilder​(int index)
         An (optional) network filter chain, listed in the order the filters should be applied.
         The chain will be applied to all outgoing connections that Envoy makes to the upstream
         servers of this cluster.
         
        repeated .envoy.api.v2.cluster.Filter filters = 40;
      • hasLoadBalancingPolicy

        boolean hasLoadBalancingPolicy()
         [#not-implemented-hide:] New mechanism for LB policy configuration. Used only if the
         :ref:`lb_policy<envoy_api_field_Cluster.lb_policy>` field has the value
         :ref:`LOAD_BALANCING_POLICY_CONFIG<envoy_api_enum_value_Cluster.LbPolicy.LOAD_BALANCING_POLICY_CONFIG>`.
         
        .envoy.api.v2.LoadBalancingPolicy load_balancing_policy = 41;
        Returns:
        Whether the loadBalancingPolicy field is set.
      • getLoadBalancingPolicy

        LoadBalancingPolicy getLoadBalancingPolicy()
         [#not-implemented-hide:] New mechanism for LB policy configuration. Used only if the
         :ref:`lb_policy<envoy_api_field_Cluster.lb_policy>` field has the value
         :ref:`LOAD_BALANCING_POLICY_CONFIG<envoy_api_enum_value_Cluster.LbPolicy.LOAD_BALANCING_POLICY_CONFIG>`.
         
        .envoy.api.v2.LoadBalancingPolicy load_balancing_policy = 41;
        Returns:
        The loadBalancingPolicy.
      • getLoadBalancingPolicyOrBuilder

        LoadBalancingPolicyOrBuilder getLoadBalancingPolicyOrBuilder()
         [#not-implemented-hide:] New mechanism for LB policy configuration. Used only if the
         :ref:`lb_policy<envoy_api_field_Cluster.lb_policy>` field has the value
         :ref:`LOAD_BALANCING_POLICY_CONFIG<envoy_api_enum_value_Cluster.LbPolicy.LOAD_BALANCING_POLICY_CONFIG>`.
         
        .envoy.api.v2.LoadBalancingPolicy load_balancing_policy = 41;
      • hasLrsServer

        boolean hasLrsServer()
         [#not-implemented-hide:]
         If present, tells the client where to send load reports via LRS. If not present, the
         client will fall back to a client-side default, which may be either (a) don't send any
         load reports or (b) send load reports for all clusters to a single default server
         (which may be configured in the bootstrap file).
         Note that if multiple clusters point to the same LRS server, the client may choose to
         create a separate stream for each cluster or it may choose to coalesce the data for
         multiple clusters onto a single stream. Either way, the client must make sure to send
         the data for any given cluster on no more than one stream.
         [#next-major-version: In the v3 API, we should consider restructuring this somehow,
         maybe by allowing LRS to go on the ADS stream, or maybe by moving some of the negotiation
         from the LRS stream here.]
         
        .envoy.api.v2.core.ConfigSource lrs_server = 42;
        Returns:
        Whether the lrsServer field is set.
      • getLrsServer

        ConfigSource getLrsServer()
         [#not-implemented-hide:]
         If present, tells the client where to send load reports via LRS. If not present, the
         client will fall back to a client-side default, which may be either (a) don't send any
         load reports or (b) send load reports for all clusters to a single default server
         (which may be configured in the bootstrap file).
         Note that if multiple clusters point to the same LRS server, the client may choose to
         create a separate stream for each cluster or it may choose to coalesce the data for
         multiple clusters onto a single stream. Either way, the client must make sure to send
         the data for any given cluster on no more than one stream.
         [#next-major-version: In the v3 API, we should consider restructuring this somehow,
         maybe by allowing LRS to go on the ADS stream, or maybe by moving some of the negotiation
         from the LRS stream here.]
         
        .envoy.api.v2.core.ConfigSource lrs_server = 42;
        Returns:
        The lrsServer.
      • getLrsServerOrBuilder

        ConfigSourceOrBuilder getLrsServerOrBuilder()
         [#not-implemented-hide:]
         If present, tells the client where to send load reports via LRS. If not present, the
         client will fall back to a client-side default, which may be either (a) don't send any
         load reports or (b) send load reports for all clusters to a single default server
         (which may be configured in the bootstrap file).
         Note that if multiple clusters point to the same LRS server, the client may choose to
         create a separate stream for each cluster or it may choose to coalesce the data for
         multiple clusters onto a single stream. Either way, the client must make sure to send
         the data for any given cluster on no more than one stream.
         [#next-major-version: In the v3 API, we should consider restructuring this somehow,
         maybe by allowing LRS to go on the ADS stream, or maybe by moving some of the negotiation
         from the LRS stream here.]
         
        .envoy.api.v2.core.ConfigSource lrs_server = 42;
      • getTrackTimeoutBudgets

        boolean getTrackTimeoutBudgets()
         If track_timeout_budgets is true, the :ref:`timeout budget histograms
         <config_cluster_manager_cluster_stats_timeout_budgets>` will be published for each
         request. These show what percentage of a request's per try and global timeout was used. A value
         of 0 would indicate that none of the timeout was used or that the timeout was infinite. A value
         of 100 would indicate that the request took the entirety of the timeout given to it.
         
        bool track_timeout_budgets = 47;
        Returns:
        The trackTimeoutBudgets.