Parameters
See plugin common configurations for configuration options available to all plugins.
rules
array[object]
An array of one or more pairs of matching conditions and actions to be executed.
match
array[object]
Rules to match for conditional traffic split.
vars
array[array]
An array of one or more matching conditions in the form of APISIX expressions to conditionally execute the plugin.
weighted_upstreams
array[object]
List of upstream configurations.
upstream_id
string or integer
ID of the configured upstream object.
weight
integer
default:
1Weight for each upstream.
upstream
object[object]
Configuration of the upstream.
Certain configuration options of upstream are not supported here. These fields are
service_name,discovery_type,checks,retries,retry_timeout,desc, andlabels. As a workaround, you can create an upstream object and configure it inupstream_id.type
array
default:
roundrobinvaild vaule:
roundrobinorchashAlgorithm for traffic splitting.
roundrobinfor weighted round robin andchashfor consistent hashing.hash_on
array
default:
varsvaild vaule:
vars,headers,cookie,consumer, orvars_combinationsUsed when
typeischash. Support hashing on built-in variables, headers, cookie, consumer, or a combination of built-in variables.key
string
Used when
typeischash. Whenhash_onis set toheaderorcookie,keyis required. Whenhash_onis set toconsumer,keyis not required as the consumer name will be used as the key automatically.nodes
object
Addresses of the upstream nodes.
timeout
object
Timeout in seconds for connecting, sending and receiving messages.
pass_host
array
default:
passvaild vaule:
pass,node, orrewriteMode deciding how the host name is passed.
passpasses the client's host name to the upstream.nodepasses the host configured in the node of the upstream.rewritepasses the value configured inupstream_host.upstream_host
string
Used when
pass_hostisrewrite. Host name of the upstream.name
string
Identifier for the upstream for specifying service name, usage scenarios, and so on.