xConnectの一時的な障害のエラー コードを構成する

Version:
日本語翻訳に関する免責事項

このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。

再試行者がxConnectクライアントの一時的なエラーを識別するために使用する デフォルトのエラー応答コードを 、選択したエラー応答コードで上書きできます。たとえば、新しいエラー応答コードを追加したり、既存のコードの一部を削除したりできます。

これを行うには2つの方法があります。 xConnectクライアント設定ファイルでretryer設定を変更するか、 C# 言語を使用して新しいHTTPエラー コードを追加できます。

xConnectクライアント設定を更新して、一時的なエラー応答コードを追加または削除します

一時的なエラー応答コードを設定するには、次のようにします。

  1. C:\path\to\sitecore\App_Config\Sitecore\XConnect.Client.Configuration\Sitecore.XConnect.Client.config.Sitecore.XConnect.Client.configファイルを開きます。

  2. xConnectクライアント リトライアーの設定オプションの <CustomCodes> セクションで、不要なエラー コードを削除し、必要に応じて新しいカスタム コードを追加します。たとえば、次の設定では、デフォルトのエラーコード <RequestTimeout>408</RequestTimeout>を削除し、新しいエラーコードIDを追加しました<InternalServerError>500</InternalServerError>

      <CustomCodes>                       
          <GatewayTimeout>504</GatewayTimeout>             
          <BadGateway>502</BadGateway>             
          <TooManyRequests>429</TooManyRequests>
          <InternalServerError>500</InternalServerError>      
          <ServiceUnavailable>503</ServiceUnavailable>
     </CustomCodes>

C# コードを使用して新しいHTTPエラー コードを追加する

C# コードを使用して、既定の再試行者によって定義されたエラー応答コードを上書きできます。

C# コードを使用して新しいHTTPエラー コードを追加するには:

  • C# コードで、検出戦略が一時的なエラーとして扱う必要があるHTTP応答状態コードを指定します。次のコード サンプルでは、既定の再試行者構成を上書きし、代わりにHTTP内部サーバー エラーとゲートウェイ タイムアウトの2種類のエラーのみを処理します。

    services.AddTransientFaultHandling(config
    => config 
    .AddDefaultHttpRetryer("MyRetryer", new
    HttpPolicyRetryerOptions
    {   
    ExponentialRetry = new ExponentialRetryOptions   
    {     
    MaxAttempts = 3,     
    MinBackoff = TimeSpan.FromSeconds(5),     
    MaxBackoff = TimeSpan.FromSeconds(30),    
    DeltaBackoff = TimeSpan.FromSeconds(1)   
    },   
    CustomCodes = new
    List<HttpStatusCode> 
        {      
          HttpStatusCode.InternalServerError,
          HttpStatusCode.GatewayTimeout 
        }
       });
この記事を改善するための提案がある場合は、 お知らせください!