#[non_exhaustive]pub struct TargetGroupAttribute {
pub key: Option<String>,
pub value: Option<String>,
}
Expand description
Information about a target group attribute.
Fields (Non-exhaustive)
This struct is marked as non-exhaustive
Struct { .. }
syntax; cannot be matched against without a wildcard ..
; and struct update syntax will not work.key: Option<String>
The name of the attribute.
The following attribute is supported by all load balancers:
-
deregistration_delay.timeout_seconds
- The amount of time, in seconds, for Elastic Load Balancing to wait before changing the state of a deregistering target fromdraining
tounused
. The range is 0-3600 seconds. The default value is 300 seconds. If the target is a Lambda function, this attribute is not supported.
The following attributes are supported by both Application Load Balancers and Network Load Balancers:
-
stickiness.enabled
- Indicates whether sticky sessions are enabled. The value istrue
orfalse
. The default isfalse
. -
stickiness.type
- The type of sticky sessions. The possible values arelb_cookie
andapp_cookie
for Application Load Balancers orsource_ip
for Network Load Balancers.
The following attributes are supported only if the load balancer is an Application Load Balancer and the target is an instance or an IP address:
-
load_balancing.algorithm.type
- The load balancing algorithm determines how the load balancer selects targets when routing requests. The value isround_robin
orleast_outstanding_requests
. The default isround_robin
. -
slow_start.duration_seconds
- The time period, in seconds, during which a newly registered target receives an increasing share of the traffic to the target group. After this time period ends, the target receives its full share of traffic. The range is 30-900 seconds (15 minutes). The default is 0 seconds (disabled). -
stickiness.app_cookie.cookie_name
- Indicates the name of the application-based cookie. Names that start with the following prefixes are not allowed:AWSALB
,AWSALBAPP
, andAWSALBTG
; they're reserved for use by the load balancer. -
stickiness.app_cookie.duration_seconds
- The time period, in seconds, during which requests from a client should be routed to the same target. After this time period expires, the application-based cookie is considered stale. The range is 1 second to 1 week (604800 seconds). The default value is 1 day (86400 seconds). -
stickiness.lb_cookie.duration_seconds
- The time period, in seconds, during which requests from a client should be routed to the same target. After this time period expires, the load balancer-generated cookie is considered stale. The range is 1 second to 1 week (604800 seconds). The default value is 1 day (86400 seconds).
The following attribute is supported only if the load balancer is an Application Load Balancer and the target is a Lambda function:
-
lambda.multi_value_headers.enabled
- Indicates whether the request and response headers that are exchanged between the load balancer and the Lambda function include arrays of values or strings. The value istrue
orfalse
. The default isfalse
. If the value isfalse
and the request contains a duplicate header field name or query parameter key, the load balancer uses the last value sent by the client.
The following attributes are supported only by Network Load Balancers:
-
deregistration_delay.connection_termination.enabled
- Indicates whether the load balancer terminates connections at the end of the deregistration timeout. The value istrue
orfalse
. The default isfalse
. -
preserve_client_ip.enabled
- Indicates whether client IP preservation is enabled. The value istrue
orfalse
. The default is disabled if the target group type is IP address and the target group protocol is TCP or TLS. Otherwise, the default is enabled. Client IP preservation cannot be disabled for UDP and TCP_UDP target groups. -
proxy_protocol_v2.enabled
- Indicates whether Proxy Protocol version 2 is enabled. The value istrue
orfalse
. The default isfalse
.
value: Option<String>
The value of the attribute.
Implementations
sourceimpl TargetGroupAttribute
impl TargetGroupAttribute
sourcepub fn key(&self) -> Option<&str>
pub fn key(&self) -> Option<&str>
The name of the attribute.
The following attribute is supported by all load balancers:
-
deregistration_delay.timeout_seconds
- The amount of time, in seconds, for Elastic Load Balancing to wait before changing the state of a deregistering target fromdraining
tounused
. The range is 0-3600 seconds. The default value is 300 seconds. If the target is a Lambda function, this attribute is not supported.
The following attributes are supported by both Application Load Balancers and Network Load Balancers:
-
stickiness.enabled
- Indicates whether sticky sessions are enabled. The value istrue
orfalse
. The default isfalse
. -
stickiness.type
- The type of sticky sessions. The possible values arelb_cookie
andapp_cookie
for Application Load Balancers orsource_ip
for Network Load Balancers.
The following attributes are supported only if the load balancer is an Application Load Balancer and the target is an instance or an IP address:
-
load_balancing.algorithm.type
- The load balancing algorithm determines how the load balancer selects targets when routing requests. The value isround_robin
orleast_outstanding_requests
. The default isround_robin
. -
slow_start.duration_seconds
- The time period, in seconds, during which a newly registered target receives an increasing share of the traffic to the target group. After this time period ends, the target receives its full share of traffic. The range is 30-900 seconds (15 minutes). The default is 0 seconds (disabled). -
stickiness.app_cookie.cookie_name
- Indicates the name of the application-based cookie. Names that start with the following prefixes are not allowed:AWSALB
,AWSALBAPP
, andAWSALBTG
; they're reserved for use by the load balancer. -
stickiness.app_cookie.duration_seconds
- The time period, in seconds, during which requests from a client should be routed to the same target. After this time period expires, the application-based cookie is considered stale. The range is 1 second to 1 week (604800 seconds). The default value is 1 day (86400 seconds). -
stickiness.lb_cookie.duration_seconds
- The time period, in seconds, during which requests from a client should be routed to the same target. After this time period expires, the load balancer-generated cookie is considered stale. The range is 1 second to 1 week (604800 seconds). The default value is 1 day (86400 seconds).
The following attribute is supported only if the load balancer is an Application Load Balancer and the target is a Lambda function:
-
lambda.multi_value_headers.enabled
- Indicates whether the request and response headers that are exchanged between the load balancer and the Lambda function include arrays of values or strings. The value istrue
orfalse
. The default isfalse
. If the value isfalse
and the request contains a duplicate header field name or query parameter key, the load balancer uses the last value sent by the client.
The following attributes are supported only by Network Load Balancers:
-
deregistration_delay.connection_termination.enabled
- Indicates whether the load balancer terminates connections at the end of the deregistration timeout. The value istrue
orfalse
. The default isfalse
. -
preserve_client_ip.enabled
- Indicates whether client IP preservation is enabled. The value istrue
orfalse
. The default is disabled if the target group type is IP address and the target group protocol is TCP or TLS. Otherwise, the default is enabled. Client IP preservation cannot be disabled for UDP and TCP_UDP target groups. -
proxy_protocol_v2.enabled
- Indicates whether Proxy Protocol version 2 is enabled. The value istrue
orfalse
. The default isfalse
.
sourceimpl TargetGroupAttribute
impl TargetGroupAttribute
sourcepub fn builder() -> Builder
pub fn builder() -> Builder
Creates a new builder-style object to manufacture TargetGroupAttribute
Trait Implementations
sourceimpl Clone for TargetGroupAttribute
impl Clone for TargetGroupAttribute
sourcefn clone(&self) -> TargetGroupAttribute
fn clone(&self) -> TargetGroupAttribute
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
sourceimpl Debug for TargetGroupAttribute
impl Debug for TargetGroupAttribute
sourceimpl PartialEq<TargetGroupAttribute> for TargetGroupAttribute
impl PartialEq<TargetGroupAttribute> for TargetGroupAttribute
sourcefn eq(&self, other: &TargetGroupAttribute) -> bool
fn eq(&self, other: &TargetGroupAttribute) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
sourcefn ne(&self, other: &TargetGroupAttribute) -> bool
fn ne(&self, other: &TargetGroupAttribute) -> bool
This method tests for !=
.
impl StructuralPartialEq for TargetGroupAttribute
Auto Trait Implementations
impl RefUnwindSafe for TargetGroupAttribute
impl Send for TargetGroupAttribute
impl Sync for TargetGroupAttribute
impl Unpin for TargetGroupAttribute
impl UnwindSafe for TargetGroupAttribute
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcefn clone_into(&self, target: &mut T)
fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more
sourceimpl<T> WithSubscriber for T
impl<T> WithSubscriber for T
sourcefn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
sourcefn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more