無限ノック › SOA 練習問題一覧 › 問題
SOAモニタリング、ロギング、分析、修復、およびパフォーマンスの最適化

ある企業はEC2上のJavaアプリケーションのログをCloudWatch Logsのロググループ(/aws/ec2/myapp)に出力しています。アプリケーションは「FATAL」を含む行でクリティカルエラーを示しますが、現在はエラー頻度の監視がなく障害発生後にエンジニアが手動でログを確認しています。5分間で「FATAL」ログが5件以上発生した場合にSNSで自動通知する仕組みを最小の構成で実現するには?

A
CloudWatch Logsサブスクリプションフィルターで「FATAL」パターンをKinesis Data Streamsに送信し、Managed Service for Apache Flinkでリアルタイム集計してしきい値超過時にSNS通知するストリーム処理パイプラインを構築する
Kinesis Data Streams+Managed Service for Apache Flinkは大規模ストリーム処理向けです。単一ロググループのエラーカウント監視には構成が過剰であり、設定・保守コストがメトリクスフィルターより大幅に高くなります。
B
CloudWatch Logsのメトリクスフィルターで「FATAL」パターンにマッチした行数をカスタムメトリクスとして発行し、CloudWatchアラームで評価期間5分・しきい値5以上の条件でSNSトピックに通知する
✓ 正解
メトリクスフィルターはCloudWatch Logsのネイティブ機能で、追加コード不要です。FATALパターンにマッチした行数をカスタムメトリクスとして発行し、CloudWatchアラームで5分間・5件以上の条件とSNSアクションを設定するだけで要件を満たします。
C
EventBridgeのスケジュールルール(5分間隔)でLambda関数をトリガーし、Logs InsightsのStartQuery APIでFATALログ件数を集計して5件以上でSNS通知するカスタム関数を実装する
EventBridgeからLambdaでLogs InsightsのStartQuery APIを呼び出す方法は機能しますが、Lambdaのコード実装と保守が必要で、メトリクスフィルター+アラームの組み合わせより構成が複雑になります。
D
Amazon Macieを有効化してCloudWatch Logsロググループを監視対象に設定し、「FATAL」を含むパターンをカスタムデータ識別子として定義してしきい値ベースのアラートを自動送信する
Amazon Macieは機密データの検出・分類を目的としたデータセキュリティサービスです。CloudWatch Logsのアプリケーションエラー監視やしきい値アラーム通知の機能は提供していません。

解説

CloudWatch Logsのメトリクスフィルター(Metric Filter)は、ログイベントのパターンマッチングを使ってカスタムメトリクスを自動生成するネイティブ機能です。「FATAL」をフィルターパターンに指定することで、マッチした行数をリアルタイムでCloudWatchメトリクスとして発行できます。そのメトリクスに対してCloudWatchアラームを作成し、評価期間5分・しきい値5・SNSアクションを設定するだけで要件を完全に満たします。追加コード・インフラ・ストリーム処理基盤は一切不要で、最小の構成で実現できます。 選択肢AのKinesis Data Streams+Managed Service for Apache Flinkは大規模ストリーム処理向けのアーキテクチャであり、単一ロググループのエラー件数監視には構成が過剰で運用コストも高くなります。 選択肢CのEventBridge+Lambda+Logs InsightsはAPIコードの実装と保守が必要で、メトリクスフィルターより構成が複雑です。 選択肢DのAmazon Macieはデータセキュリティサービスであり、機密データの検出を目的としたもので、CloudWatch Logsのエラーログ監視やアラーム通知の機能は提供していません。

ドメイン別正答率・予想スコアでリアルタイムに実力把握

無限ノックでSOAを徹底対策。全問AI生成のオリジナル問題。

無料で演習を始める →
← SOA の問題一覧に戻る