モック エラーを含むファイルからランダムに選択されたエラーで要求が失敗します。
構成の例
{
"$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"
}
}
構成プロパティ
| 財産 | 形容 | デフォルト |
|---|---|---|
errorsFile |
エラー応答を含むファイルへのパス。 | 既定値なし |
rate |
ランダム エラーで失敗する要求の割合。 0 ~ 100 の値。 | 50 |
retryAfterInSeconds |
要求を再試行するまでに待機する秒数。 動的スロットル用の Retry-After 応答ヘッダーに含まれます。 |
5 |
コマンド ライン オプション
| 名前 | 形容 | デフォルト |
|---|---|---|
-f, --failure-rate <failure rate> |
ランダム エラーで失敗する要求の割合。 0 ~ 100 の値。 | 50 |
注釈
応答ごとの Retry-After 値
既定では、 Retry-After ヘッダーはグローバル retryAfterInSeconds 値を使用します。 エラー応答ファイルの @dynamic=N 構文を使用して、応答ごとにこの値をオーバーライドできます。ここで、 N は再試行するまでの待機時間の秒数です。
{
"$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."
}
}
}
]
}
]
}
この例では、Retry-After ヘッダーは、グローバルretryAfterInSeconds設定に関係なく、この応答に17秒を使用します。 この値は、プレーンな @dynamic トークンと同様に、後続の調整された要求ごとにインクリメントされます。
次のステップ
GitHub で Microsoft と共同作業する
このコンテンツのソースは GitHub にあります。そこで、issue や pull request を作成および確認することもできます。 詳細については、共同作成者ガイドを参照してください。
Dev Proxy