Service Profiles
A service profile spec must contain the following top level fields:
Route
A route object must contain the following fields:
field | value |
---|---|
name | the name of this route as it will appear in the route label |
condition | a object that defines if a request matches this route |
responseClasses | (optional) a list of response class objects |
isRetryable | indicates that requests to this route are always safe to retry and will cause the proxy to retry failed requests on this route whenever possible |
timeout | the maximum amount of time to wait for a response (including retries) to complete after the request is sent |
A request match object must contain exactly one of the following fields:
This is a condition that checks the request method:
If more than one condition field is set, all of them must be satisfied. This is equivalent to using the ‘all’ condition:
Conditions can be combined using ‘all’, ‘any’, and ‘not’:
Response Class
field | value |
---|---|
condition | a response match object that defines if a response matches this response class |
isFailure | a boolean that defines if these responses should be classified as failed |
A response match object must contain exactly one of the following fields:
Response Match conditions can be combined in a similar way as shown above for
Status Range
A status range object must contain at least one of the following fields. Specifying only one of min or max matches just that one status code.
field | value |
---|---|
min | the status code must be greater than or equal to this value |
max | the status code must be less than or equal to this value |