Q14 — AWS DVA-C02 第1章
第 14/100 問 | ← 第1章
ある会社が、AWS上でサーバーレスアプリケーションを構築しています。このアプリケーションは、AWS Lambda関数を使用して、週7日・1日24時間で顧客注文を処理します。Lambda関数は、外部システムの支払い処理HTTP APIを呼び出して支払いを処理します。負荷テスト中に、開発者は外部支払い処理APIが時折タイムアウトまたはエラーを返すことを発見しました。この会社は、一部の支払い処理API呼び出しでエラーが発生することを予期しています。この会社は、支払い処理外部APIのエラー率が1時間あたりのトランザクション総数の5%を超えた場合にのみ、サポートチームがほぼリアルタイムで通知を受けることを望んでいます。開発者は、既存のAmazon Simple Notification Service(Amazon SNS)トピックを通知先として使用するよう設定済みです。この要件を満たす解決策はどれですか?
- A. 支払い処理API呼び出しの結果をAmazon CloudWatch Logsに書き込む。Amazon CloudWatch Logs Insightsを使用してCloudWatchログをクエリする。Lambda関数をスケジュールしてCloudWatchログをチェックし、既存のSNSトピックに通知する。
- B. 外部支払い処理API呼び出しの失敗を記録するカスタムメトリクスをCloudWatchに公開する。CloudWatchアラームを設定し、エラー率が指定されたしきい値を超えた際に既存のSNSトピックに通知する。 ✓
- C. 外部支払い処理API呼び出しの結果を新しいAmazon SNSトピックに公開する。サポートチームメンバーが新しいSNSトピックを購読するよう設定する。
- D. 外部支払い処理API呼び出しの結果をAmazon S3に書き込む。定期的にAmazon Athenaクエリを実行するようスケジュールする。Athenaがエラー率が指定されたしきい値を超えた場合に、既存のSNSトピックに通知するよう設定する。
正解: B. 外部支払い処理API呼び出しの失敗を記録するカスタムメトリクスをCloudWatchに公開する。CloudWatchアラームを設定し、エラー率が指定されたしきい値を超えた際に既存のSNSトピックに通知する。
解説
答えはBです。この状況では、外部支払い処理API呼び出しの失敗を記録するカスタムメトリクスをCloudWatchに公開することで、エラー率を効果的に監視できます。その後、CloudWatchアラームを設定すれば、エラー率が1時間あたりのトランザクション総数の5%を超えた際に、既存のSNSトピックへ即座に通知できます。これは、エラー率が特定のしきい値を超えた場合のみサポートチームに通知するという要件を満たします。選択肢Aでは、Lambda関数によるログチェックは間接的かつ非効率です。選択肢Cでは、新しいSNSトピックの作成は既存のSNSトピックを使用するという要件に反します。選択肢Dでは、結果をAmazon S3に書き込み、Amazon Athenaクエリを定期実行する方法では、ほぼリアルタイムの通知が実現できません。したがって、選択肢Bが正解です。 【灯笼考证提供:swufelp1999】