Bemærk
Adgang til denne side kræver godkendelse. Du kan prøve at logge på eller ændre mapper.
Adgang til denne side kræver godkendelse. Du kan prøve at ændre mapper.
Fails requests with a random selected error from file containing mocked errors.
Configuration example
{
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v2.1.0/rc.schema.json",
"plugins": [
{
"name": "GenericRandomErrorPlugin",
"enabled": true,
"pluginPath": "~appFolder/plugins/DevProxy.Plugins.dll",
"configSection": "genericRandomErrorPlugin"
}
],
"urlsToWatch": [
"https://api.openai.com/*"
],
"genericRandomErrorPlugin": {
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v2.1.0/genericrandomerrorplugin.schema.json",
"errorsFile": "errors.json"
}
}
Configuration properties
| Property | Description | Default |
|---|---|---|
errorsFile |
Path to the file that contains error responses. | No default |
rate |
The percentage of requests to fail with a random error. Value between 0 and 100. | 50 |
retryAfterInSeconds |
The number of seconds to wait before retrying the request. Included on the Retry-After response header for dynamic throttling. |
5 |
Command line options
| Name | Description | Default |
|---|---|---|
-f, --failure-rate <failure rate> |
The percentage of requests to fail with a random error. Value between 0 and 100. | 50 |
Remarks
Per-response Retry-After values
By default, the Retry-After header uses the global retryAfterInSeconds value. You can override this value on a per-response basis using the @dynamic=N syntax in the error responses file, where N is the number of seconds to wait before retrying.
{
"$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v2.1.0/genericrandomerrorplugin.errorsfile.schema.json",
"errors": [
{
"request": {
"url": "https://api.openai.com/*"
},
"responses": [
{
"statusCode": 429,
"headers": [
{
"name": "Retry-After",
"value": "@dynamic=17"
}
],
"body": {
"error": {
"message": "Rate limit exceeded. Wait 17 seconds."
}
}
}
]
}
]
}
In this example, the Retry-After header uses 17 seconds for this response, regardless of the global retryAfterInSeconds setting. The value increments on each subsequent throttled request, as with the plain @dynamic token.
Next step
Dev Proxy