Reference documentation and code samples for the Network Services V1 API class Google::Cloud::NetworkServices::V1::LbTrafficExtension.
LbTrafficExtension
is a resource that lets the extension service modify the
headers and payloads of both requests and responses without impacting the
choice of backend services or any other security policies associated with the
backend service.
Inherits
- Object
Extended By
- Google::Protobuf::MessageExts::ClassMethods
Includes
- Google::Protobuf::MessageExts
Methods
#create_time
def create_time() -> ::Google::Protobuf::Timestamp
- (::Google::Protobuf::Timestamp) — Output only. The timestamp when the resource was created.
#description
def description() -> ::String
- (::String) — Optional. A human-readable description of the resource.
#description=
def description=(value) -> ::String
- value (::String) — Optional. A human-readable description of the resource.
- (::String) — Optional. A human-readable description of the resource.
#extension_chains
def extension_chains() -> ::Array<::Google::Cloud::NetworkServices::V1::ExtensionChain>
- (::Array<::Google::Cloud::NetworkServices::V1::ExtensionChain>) — Required. A set of ordered extension chains that contain the match conditions and extensions to execute. Match conditions for each extension chain are evaluated in sequence for a given request. The first extension chain that has a condition that matches the request is executed. Any subsequent extension chains do not execute. Limited to 5 extension chains per resource.
#extension_chains=
def extension_chains=(value) -> ::Array<::Google::Cloud::NetworkServices::V1::ExtensionChain>
- value (::Array<::Google::Cloud::NetworkServices::V1::ExtensionChain>) — Required. A set of ordered extension chains that contain the match conditions and extensions to execute. Match conditions for each extension chain are evaluated in sequence for a given request. The first extension chain that has a condition that matches the request is executed. Any subsequent extension chains do not execute. Limited to 5 extension chains per resource.
- (::Array<::Google::Cloud::NetworkServices::V1::ExtensionChain>) — Required. A set of ordered extension chains that contain the match conditions and extensions to execute. Match conditions for each extension chain are evaluated in sequence for a given request. The first extension chain that has a condition that matches the request is executed. Any subsequent extension chains do not execute. Limited to 5 extension chains per resource.
#forwarding_rules
def forwarding_rules() -> ::Array<::String>
-
(::Array<::String>) — Optional. A list of references to the forwarding rules to which this
service extension is attached. At least one forwarding rule is required.
Only one
LbTrafficExtension
resource can be associated with a forwarding rule.
#forwarding_rules=
def forwarding_rules=(value) -> ::Array<::String>
-
value (::Array<::String>) — Optional. A list of references to the forwarding rules to which this
service extension is attached. At least one forwarding rule is required.
Only one
LbTrafficExtension
resource can be associated with a forwarding rule.
-
(::Array<::String>) — Optional. A list of references to the forwarding rules to which this
service extension is attached. At least one forwarding rule is required.
Only one
LbTrafficExtension
resource can be associated with a forwarding rule.
#labels
def labels() -> ::Google::Protobuf::Map{::String => ::String}
-
(::Google::Protobuf::Map{::String => ::String}) — Optional. Set of labels associated with the
LbTrafficExtension
resource.The format must comply with the requirements for labels for Google Cloud resources.
#labels=
def labels=(value) -> ::Google::Protobuf::Map{::String => ::String}
-
value (::Google::Protobuf::Map{::String => ::String}) — Optional. Set of labels associated with the
LbTrafficExtension
resource.The format must comply with the requirements for labels for Google Cloud resources.
-
(::Google::Protobuf::Map{::String => ::String}) — Optional. Set of labels associated with the
LbTrafficExtension
resource.The format must comply with the requirements for labels for Google Cloud resources.
#load_balancing_scheme
def load_balancing_scheme() -> ::Google::Cloud::NetworkServices::V1::LoadBalancingScheme
-
(::Google::Cloud::NetworkServices::V1::LoadBalancingScheme) — Required. All backend services and forwarding rules referenced by this
extension must share the same load balancing scheme. Supported values:
INTERNAL_MANAGED
andEXTERNAL_MANAGED
. For more information, refer to Backend services overview.
#load_balancing_scheme=
def load_balancing_scheme=(value) -> ::Google::Cloud::NetworkServices::V1::LoadBalancingScheme
-
value (::Google::Cloud::NetworkServices::V1::LoadBalancingScheme) — Required. All backend services and forwarding rules referenced by this
extension must share the same load balancing scheme. Supported values:
INTERNAL_MANAGED
andEXTERNAL_MANAGED
. For more information, refer to Backend services overview.
-
(::Google::Cloud::NetworkServices::V1::LoadBalancingScheme) — Required. All backend services and forwarding rules referenced by this
extension must share the same load balancing scheme. Supported values:
INTERNAL_MANAGED
andEXTERNAL_MANAGED
. For more information, refer to Backend services overview.
#metadata
def metadata() -> ::Google::Protobuf::Struct
-
(::Google::Protobuf::Struct) — Optional. The metadata provided here is included as part of the
metadata_context
(of typegoogle.protobuf.Struct
) in theProcessingRequest
message sent to the extension server.The metadata applies to all extensions in all extensions chains in this resource.
The metadata is available under the key
com.google.lb_traffic_extension.<resource_name>
.The following variables are supported in the metadata:
{forwarding_rule_id}
- substituted with the forwarding rule's fully qualified resource name.This field must not be set if at least one of the extension chains contains plugin extensions. Setting it results in a validation error.
You can set metadata at either the resource level or the extension level. The extension level metadata is recommended because you can pass a different set of metadata through each extension to the backend.
#metadata=
def metadata=(value) -> ::Google::Protobuf::Struct
-
value (::Google::Protobuf::Struct) — Optional. The metadata provided here is included as part of the
metadata_context
(of typegoogle.protobuf.Struct
) in theProcessingRequest
message sent to the extension server.The metadata applies to all extensions in all extensions chains in this resource.
The metadata is available under the key
com.google.lb_traffic_extension.<resource_name>
.The following variables are supported in the metadata:
{forwarding_rule_id}
- substituted with the forwarding rule's fully qualified resource name.This field must not be set if at least one of the extension chains contains plugin extensions. Setting it results in a validation error.
You can set metadata at either the resource level or the extension level. The extension level metadata is recommended because you can pass a different set of metadata through each extension to the backend.
-
(::Google::Protobuf::Struct) — Optional. The metadata provided here is included as part of the
metadata_context
(of typegoogle.protobuf.Struct
) in theProcessingRequest
message sent to the extension server.The metadata applies to all extensions in all extensions chains in this resource.
The metadata is available under the key
com.google.lb_traffic_extension.<resource_name>
.The following variables are supported in the metadata:
{forwarding_rule_id}
- substituted with the forwarding rule's fully qualified resource name.This field must not be set if at least one of the extension chains contains plugin extensions. Setting it results in a validation error.
You can set metadata at either the resource level or the extension level. The extension level metadata is recommended because you can pass a different set of metadata through each extension to the backend.
#name
def name() -> ::String
-
(::String) — Required. Identifier. Name of the
LbTrafficExtension
resource in the following format:projects/{project}/locations/{location}/lbTrafficExtensions/{lb_traffic_extension}
.
#name=
def name=(value) -> ::String
-
value (::String) — Required. Identifier. Name of the
LbTrafficExtension
resource in the following format:projects/{project}/locations/{location}/lbTrafficExtensions/{lb_traffic_extension}
.
-
(::String) — Required. Identifier. Name of the
LbTrafficExtension
resource in the following format:projects/{project}/locations/{location}/lbTrafficExtensions/{lb_traffic_extension}
.
#update_time
def update_time() -> ::Google::Protobuf::Timestamp
- (::Google::Protobuf::Timestamp) — Output only. The timestamp when the resource was updated.