View Source Wayfarer.Dsl (wayfarer v0.6.0)
The Wayfarer DSL for defining static proxy configurations.
DSL options
wayfarer
- config
- health_checks
- check
- host_patterns
- pattern
- listeners
- http
- https
- targets
- http
- health_checks
- check
- health_checks
- https
- health_checks
- check
- health_checks
- plug
- ws
- health_checks
- check
- health_checks
- wss
- health_checks
- check
- health_checks
- http
- health_checks
config
* health_checks
* check
* host_patterns
* pattern
* listeners
* http
* https
* targets
* http
* health_checks
* check
* https
* health_checks
* check
* plug
* ws
* health_checks
* check
* wss
* health_checks
* check:name(String.t/0) -
health_checks
* checkcheck
:name- A unique name for the health check.:method- The HTTP method to use for the request. Valid values are :get, :head, :post, :put, :delete, :connect, :options, :trace, :patch The default value is:get.:connect_timeout(pos_integer/0) - Connection timeout in milliseconds The default value is5000.:response_timeout(pos_integer/0) - Response timeout in milliseconds The default value is500.:hostname- The HTTP hostname to use when sending the request. Defaults to the IP address.:interval(pos_integer/0) - Interval in milliseconds The default value is30000.:threshold(pos_integer/0) - Success threshold The default value is3.:path(String.t/0) - Path The default value is"/".:success_codes- HTTP status codes which are considered successful. The default value is[200..299].
host_patterns
* patternpattern
:pattern(String.t/0) - Required. A hostname matching pattern.
listeners
* http
* httpshttp
:scheme- Required. The listening protocol. Valid values are :http, :https:address- Required. The address of the interface to listen on.:name- A unique name for the listener (defaults to the URI).:port(pos_integer/0) - Required. The TCP port on which to listen for incoming connections.:http_1_options(keyword/0) - Options to configure the HTTP/1 stack in Bandit. The default value is[].:http_2_options(keyword/0) - Options to configure the HTTP/2 stack in Bandit. The default value is[].:thousand_island_options(keyword/0) - Possible options to configure a ThousandIsland server. The default value is[].:websocket_options(keyword/0) - Options to configure the WebSocket stack in Bandit. The default value is[].
https
:scheme- Required. The listening protocol. Valid values are :http, :https:address- Required. The address of the interface to listen on.:name- A unique name for the listener (defaults to the URI).:port(pos_integer/0) - Required. The TCP port on which to listen for incoming connections.:http_1_options(keyword/0) - Options to configure the HTTP/1 stack in Bandit. The default value is[].:http_2_options(keyword/0) - Options to configure the HTTP/2 stack in Bandit. The default value is[].:thousand_island_options(keyword/0) - Possible options to configure a ThousandIsland server. The default value is[].:websocket_options(keyword/0) - Options to configure the WebSocket stack in Bandit. The default value is[].:certfile(String.t/0) - The path to a file containing the SSL certificate to use for this listener.:keyfile(String.t/0) - The path to a file containing the SSL key to use for this listener.:cipher_suite- Used to define a pre-selected set of ciphers, as described byPlug.SSL.configure/1. Valid values are nil, :strong, :compatible
targets
* http
* health_checks
* check
* https
* health_checks
* check
* plug
* ws
* health_checks
* check
* wss
* health_checks
* check:algorithm- The target selection algorithm. Valid values are :round_robin, :sticky The default value is:round_robin.
http
* health_checks
* check:address- Required. The address of the interface to listen on.:name- A unique name for the target (defaults to the URI).:port(pos_integer/0) - Required. The TCP port on which to listen for incoming connections.:transport- Which HTTP protocol to use. Valid values are :http1, :http2, :auto The default value is:auto.
####### health_checks
* check######## check
:name- A unique name for the health check.:method- The HTTP method to use for the request. Valid values are :get, :head, :post, :put, :delete, :connect, :options, :trace, :patch The default value is:get.:connect_timeout(pos_integer/0) - Connection timeout in milliseconds The default value is5000.:response_timeout(pos_integer/0) - Response timeout in milliseconds The default value is500.:hostname- The HTTP hostname to use when sending the request. Defaults to the IP address.:interval(pos_integer/0) - Interval in milliseconds The default value is30000.:threshold(pos_integer/0) - Success threshold The default value is3.:path(String.t/0) - Path The default value is"/".:success_codes- HTTP status codes which are considered successful. The default value is[200..299].
https
* health_checks
* check:address- Required. The address of the interface to listen on.:name- A unique name for the target (defaults to the URI).:port(pos_integer/0) - Required. The TCP port on which to listen for incoming connections.:transport- Which HTTP protocol to use. Valid values are :http1, :http2, :auto The default value is:auto.
####### health_checks
* check######## check
:name- A unique name for the health check.:method- The HTTP method to use for the request. Valid values are :get, :head, :post, :put, :delete, :connect, :options, :trace, :patch The default value is:get.:connect_timeout(pos_integer/0) - Connection timeout in milliseconds The default value is5000.:response_timeout(pos_integer/0) - Response timeout in milliseconds The default value is500.:hostname- The HTTP hostname to use when sending the request. Defaults to the IP address.:interval(pos_integer/0) - Interval in milliseconds The default value is30000.:threshold(pos_integer/0) - Success threshold The default value is3.:path(String.t/0) - Path The default value is"/".:success_codes- HTTP status codes which are considered successful. The default value is[200..299].
plug
:module(module that adoptsPlugor a module and options) - Required. A plug which can handle requests.
ws
* health_checks
* check:address- Required. The address of the interface to listen on.:name- A unique name for the target (defaults to the URI).:port(pos_integer/0) - Required. The TCP port on which to listen for incoming connections.:transport- Which HTTP protocol to use. Valid values are :http1, :http2, :auto The default value is:auto.
####### health_checks
* check######## check
:name- A unique name for the health check.:method- The HTTP method to use for the request. Valid values are :get, :head, :post, :put, :delete, :connect, :options, :trace, :patch The default value is:get.:connect_timeout(pos_integer/0) - Connection timeout in milliseconds The default value is5000.:response_timeout(pos_integer/0) - Response timeout in milliseconds The default value is500.:hostname- The HTTP hostname to use when sending the request. Defaults to the IP address.:interval(pos_integer/0) - Interval in milliseconds The default value is30000.:threshold(pos_integer/0) - Success threshold The default value is3.:path(String.t/0) - Path The default value is"/".:success_codes- HTTP status codes which are considered successful. The default value is[200..299].
wss
* health_checks
* check:address- Required. The address of the interface to listen on.:name- A unique name for the target (defaults to the URI).:port(pos_integer/0) - Required. The TCP port on which to listen for incoming connections.:transport- Which HTTP protocol to use. Valid values are :http1, :http2, :auto The default value is:auto.
####### health_checks
* check######## check
:name- A unique name for the health check.:method- The HTTP method to use for the request. Valid values are :get, :head, :post, :put, :delete, :connect, :options, :trace, :patch The default value is:get.:connect_timeout(pos_integer/0) - Connection timeout in milliseconds The default value is5000.:response_timeout(pos_integer/0) - Response timeout in milliseconds The default value is500.:hostname- The HTTP hostname to use when sending the request. Defaults to the IP address.:interval(pos_integer/0) - Interval in milliseconds The default value is30000.:threshold(pos_integer/0) - Success threshold The default value is3.:path(String.t/0) - Path The default value is"/".:success_codes- HTTP status codes which are considered successful. The default value is[200..299].