模擬問題集DVA-C02練習問題 13

DVA-C02 練習問題 13

AWS Developer – Associate・トラブルシューティングと最適化・無料公開(全 200 問中 15 問を無料公開中)

問題
ある企業が AWS 上でサーバーレスアプリケーションを構築しています。このアプリケーションは AWS Lambda 関数を使用して、24 時間 365 日体制で顧客の注文を処理します。Lambda 関数は支払い処理のために外部ベンダーの HTTP API を呼び出します。 負荷テスト中に、開発者は外部ベンダーの支払い処理 API が時折タイムアウトしてエラーを返すことを発見しました。同社は、一部の支払い処理 API 呼び出しがエラーを返すことを想定しています。 同社は、支払い処理外部 API のエラー率が 1 時間あたりの全トランザクション数の 5% を超えた場合にのみ、サポートチームがほぼリアルタイムで通知を受け取ることを望んでいます。開発者は、サポートチームに通知するよう構成済みの既存の Amazon Simple Notification Service (Amazon SNS) トピックを使用する必要があります。 これらの要件を満たすソリューションはどれですか?

選択肢と解説

  • 1
    支払い処理 API 呼び出しの結果を Amazon CloudWatch に書き込む。Amazon CloudWatch Logs Insights を使用して CloudWatch ログをクエリする。Lambda 関数をスケジュール実行して CloudWatch ログをチェックし、既存の SNS トピックに通知する。
  • 外部支払い処理 API 呼び出しの失敗を記録するカスタムメトリクスを CloudWatch に発行する。エラー率が指定したレートを超えたときに既存の SNS トピックに通知する CloudWatch アラームを構成する。
  • 3
    外部支払い処理 API 呼び出しの結果を新しい Amazon SNS トピックに発行する。サポートチームのメンバーをその新しい SNS トピックにサブスクライブさせる。
  • 4
    外部支払い処理 API 呼び出しの結果を Amazon S3 に書き込む。定期的に実行される Amazon Athena クエリをスケジュールする。エラー率が指定したレートを超えたときに既存の SNS トピックに通知を送信するよう Athena を構成する。

解説

【正解】B

【0からの解説】
要件は「外部 API のエラー率が 1 時間あたり 5% を超えたときにのみ、ほぼリアルタイムで SNS 通知」です。これは CloudWatch のカスタムメトリクス + CloudWatch アラームの典型パターンです。Lambda から PutMetricData で「成功数」「失敗数(エラー)」などをカスタムメトリクスとして発行し、CloudWatch アラームでメトリクス演算(失敗 ÷ 全体)を用いてエラー率を算出、しきい値 5%・評価期間 1 時間でアラームを構成します。アラームのアクションに既存 SNS トピックを指定すれば、しきい値超過時に即座に通知が飛びます。マネージドで低レイテンシ、運用も簡潔です。

【誤りの選択肢】
A:ログを書き込み、別の Lambda をスケジュール実行して Logs Insights でクエリしてしきい値判定する方式は、ポーリング間隔ぶんの遅延と自作ロジックの保守負荷があり、「ほぼリアルタイム」かつシンプルという点で劣ります。
C:すべての結果を新しい SNS トピックに発行すると成功も失敗も全件通知されてしまい、「エラー率 5% 超過時のみ」という条件付き通知を実現できません。
D:S3 + Athena の定期クエリはバッチ的でレイテンシが大きく、また Athena 自体がしきい値超過で SNS に通知する機能を持たないため要件を満たせません。

【参考】
CloudWatch カスタムメトリクスの発行
CloudWatch アラームの使用
← 練習問題 12練習問題 14
DVA-C02 の模擬問題集は全 200

本番形式の練習テスト 4 回を、試験モード/演習モードで受験できます。 全問に解説付き、ドメイン別の弱点分析にも対応。模試プラン(月額 ¥980)からご利用いただけます。

DVA-C02 の模試を受ける料金プランを見る

DVA-C02 の無料公開問題

問題 1問題 2問題 3問題 4問題 5問題 6問題 7問題 8問題 9問題 10問題 11問題 12問題 13問題 14問題 15