Class: Aws::AppMesh::Types::RouteSpec
- Inherits:
-
Struct
- Object
- Struct
- Aws::AppMesh::Types::RouteSpec
- Defined in:
- gems/aws-sdk-appmesh/lib/aws-sdk-appmesh/types.rb
Overview
When making an API call, you may pass RouteSpec data as a hash:
{
grpc_route: {
action: { # required
weighted_targets: [ # required
{
virtual_node: "ResourceName", # required
weight: 1, # required
},
],
},
match: { # required
metadata: [
{
invert: false,
match: {
exact: "HeaderMatch",
prefix: "HeaderMatch",
range: {
end: 1, # required
start: 1, # required
},
regex: "HeaderMatch",
suffix: "HeaderMatch",
},
name: "HeaderName", # required
},
],
method_name: "MethodName",
service_name: "ServiceName",
},
retry_policy: {
grpc_retry_events: ["cancelled"], # accepts cancelled, deadline-exceeded, internal, resource-exhausted, unavailable
http_retry_events: ["HttpRetryPolicyEvent"],
max_retries: 1, # required
per_retry_timeout: { # required
unit: "s", # accepts s, ms
value: 1,
},
tcp_retry_events: ["connection-error"], # accepts connection-error
},
timeout: {
idle: {
unit: "s", # accepts s, ms
value: 1,
},
per_request: {
unit: "s", # accepts s, ms
value: 1,
},
},
},
http2_route: {
action: { # required
weighted_targets: [ # required
{
virtual_node: "ResourceName", # required
weight: 1, # required
},
],
},
match: { # required
headers: [
{
invert: false,
match: {
exact: "HeaderMatch",
prefix: "HeaderMatch",
range: {
end: 1, # required
start: 1, # required
},
regex: "HeaderMatch",
suffix: "HeaderMatch",
},
name: "HeaderName", # required
},
],
method: "GET", # accepts GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE, PATCH
path: {
exact: "HttpPathExact",
regex: "HttpPathRegex",
},
prefix: "String",
query_parameters: [
{
match: {
exact: "String",
},
name: "QueryParameterName", # required
},
],
scheme: "http", # accepts http, https
},
retry_policy: {
http_retry_events: ["HttpRetryPolicyEvent"],
max_retries: 1, # required
per_retry_timeout: { # required
unit: "s", # accepts s, ms
value: 1,
},
tcp_retry_events: ["connection-error"], # accepts connection-error
},
timeout: {
idle: {
unit: "s", # accepts s, ms
value: 1,
},
per_request: {
unit: "s", # accepts s, ms
value: 1,
},
},
},
http_route: {
action: { # required
weighted_targets: [ # required
{
virtual_node: "ResourceName", # required
weight: 1, # required
},
],
},
match: { # required
headers: [
{
invert: false,
match: {
exact: "HeaderMatch",
prefix: "HeaderMatch",
range: {
end: 1, # required
start: 1, # required
},
regex: "HeaderMatch",
suffix: "HeaderMatch",
},
name: "HeaderName", # required
},
],
method: "GET", # accepts GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE, PATCH
path: {
exact: "HttpPathExact",
regex: "HttpPathRegex",
},
prefix: "String",
query_parameters: [
{
match: {
exact: "String",
},
name: "QueryParameterName", # required
},
],
scheme: "http", # accepts http, https
},
retry_policy: {
http_retry_events: ["HttpRetryPolicyEvent"],
max_retries: 1, # required
per_retry_timeout: { # required
unit: "s", # accepts s, ms
value: 1,
},
tcp_retry_events: ["connection-error"], # accepts connection-error
},
timeout: {
idle: {
unit: "s", # accepts s, ms
value: 1,
},
per_request: {
unit: "s", # accepts s, ms
value: 1,
},
},
},
priority: 1,
tcp_route: {
action: { # required
weighted_targets: [ # required
{
virtual_node: "ResourceName", # required
weight: 1, # required
},
],
},
timeout: {
idle: {
unit: "s", # accepts s, ms
value: 1,
},
},
},
}
An object that represents a route specification. Specify one route type.
Constant Summary collapse
- SENSITIVE =
[]
Instance Attribute Summary collapse
-
#grpc_route ⇒ Types::GrpcRoute
An object that represents the specification of a gRPC route.
-
#http2_route ⇒ Types::HttpRoute
An object that represents the specification of an HTTP/2 route.
-
#http_route ⇒ Types::HttpRoute
An object that represents the specification of an HTTP route.
-
#priority ⇒ Integer
The priority for the route.
-
#tcp_route ⇒ Types::TcpRoute
An object that represents the specification of a TCP route.
Instance Attribute Details
#grpc_route ⇒ Types::GrpcRoute
An object that represents the specification of a gRPC route.
6385 6386 6387 6388 6389 6390 6391 6392 6393 |
# File 'gems/aws-sdk-appmesh/lib/aws-sdk-appmesh/types.rb', line 6385 class RouteSpec < Struct.new( :grpc_route, :http2_route, :http_route, :priority, :tcp_route) SENSITIVE = [] include Aws::Structure end |
#http2_route ⇒ Types::HttpRoute
An object that represents the specification of an HTTP/2 route.
6385 6386 6387 6388 6389 6390 6391 6392 6393 |
# File 'gems/aws-sdk-appmesh/lib/aws-sdk-appmesh/types.rb', line 6385 class RouteSpec < Struct.new( :grpc_route, :http2_route, :http_route, :priority, :tcp_route) SENSITIVE = [] include Aws::Structure end |
#http_route ⇒ Types::HttpRoute
An object that represents the specification of an HTTP route.
6385 6386 6387 6388 6389 6390 6391 6392 6393 |
# File 'gems/aws-sdk-appmesh/lib/aws-sdk-appmesh/types.rb', line 6385 class RouteSpec < Struct.new( :grpc_route, :http2_route, :http_route, :priority, :tcp_route) SENSITIVE = [] include Aws::Structure end |
#priority ⇒ Integer
The priority for the route. Routes are matched based on the specified value, where 0 is the highest priority.
6385 6386 6387 6388 6389 6390 6391 6392 6393 |
# File 'gems/aws-sdk-appmesh/lib/aws-sdk-appmesh/types.rb', line 6385 class RouteSpec < Struct.new( :grpc_route, :http2_route, :http_route, :priority, :tcp_route) SENSITIVE = [] include Aws::Structure end |
#tcp_route ⇒ Types::TcpRoute
An object that represents the specification of a TCP route.
6385 6386 6387 6388 6389 6390 6391 6392 6393 |
# File 'gems/aws-sdk-appmesh/lib/aws-sdk-appmesh/types.rb', line 6385 class RouteSpec < Struct.new( :grpc_route, :http2_route, :http_route, :priority, :tcp_route) SENSITIVE = [] include Aws::Structure end |