スキップしてコンテンツを表示

Rate exceeded エラーの原因となっている AWS API コールを特定する方法を教えてください。

所要時間2分
0

AWS サービスを作成、更新したり、サービスにアクセスしようとしたりすると、Rate exceeded というエラーメッセージが表示されます。このエラーの原因となっている API コールを特定したいです。

簡単な説明

AWS アカウントで Rate exceeded エラーの原因となっている API コールを特定するには、AWS CloudTrail ログ用の Amazon Athena テーブルを作成します。次に、Athena クエリを実行し、Rate exceeded エラーに関連する API コールを特定します。

注: アカウント内の API アクティビティを記録するには、まず CloudTrail で証跡を作成する必要があります。証跡は、アカウント内で証跡を作成するまでは、データイベントを記録しません。

解決策

CloudTrail ログ用の Athena テーブルを作成する

手順については、「CloudTrail コンソールを使用して CloudTrail ログ用の Athena テーブルを作成する」を参照してください。

Athena クエリを作成して実行し、関連する API コールを特定する

次の手順を実行します。

  1. Athena コンソールを開きます。

  2. [新規クエリ] タブを選択します。

  3. 次のクエリ例をクエリテキストボックスに入力し、[クエリを実行] を選択します。

    SELECT eventname, errorcode, eventsource, awsregion, useragent, COUNT(*) AS count  
      FROM cloudtrail-table-name     
     WHERE errorcode = 'ThrottlingException'  
           AND eventtime BETWEEN '2018-10-14T03:00:08Z' AND '2018-10-23T07:15:08Z'  
     GROUP BY errorcode, awsregion, eventsource, useragent, eventname  
     ORDER BY count DESC;

    注: cloudtrail-table-name は、実際の CloudTrail テーブル名に置き換えます。

  4. クエリ出力で、errorcode フィールドに ThrottlingException 値が含まれているレコードを特定します。eventname フィールドと eventsource フィールドに表示される API コールが Rate exceeded エラーの原因です。

複数の API コールと AWS サービスに関する 「Rate exceeded」エラーのトラブルシューティング

Rate exceeded エラーは、別々のスロットリング条件により発生する場合があります。条件は、使用している AWS サービスと API コールによって異なります。

使用している API コールまたは AWS サービスでの Rate exceeded エラーをトラブルシューティングする方法については、次の AWS ナレッジセンターの記事を参照してください。

注: AWS API コールに待機ステートメントを追加すると、スロットリング後に再試行させることができます。詳細については、「リトライ動作」を参照してください。

API コール GetResourceConfigHistory または ListDiscoveredResources

AWS Config コンソールでのエラーメッセージをトラブルシューティングする方法を教えてください」を参照してください。

PutMetricData API コール

CloudWatch API で PutMetricData を呼び出す際の、スロットリングを回避する方法を教えてください」を参照してください。

AWS Auto Scaling の API コール

「Auto Scaling API コールに対するスロットリングを防ぐ方法を教えてください」を参照してください。

AWS Lambda 関数の API コール

Rate exceeded エラーと 429 TooManyRequestsException エラーが発生する、Lambda 関数のスロットリングをトラブルシューティングする方法を教えてください」を参照してください。

AWS Elastic Beanstalk の API コール

Elastic Beanstalk での API スロットリングまたは Rate Exceeded エラーを解決する方法を教えてください」を参照してください。

関連情報

AWS CloudTrail ログを検索するための Amazon Athena テーブルを自動的に作成する方法を教えてください

コメントはありません

関連するコンテンツ