Instiq
第5章 · トラブルシューティングと最適化·v2.1.0·更新 2026/6/28·読了目安 約9分

変更要約: in-scopeサービス網羅(軸B): s1(CloudWatch)にAthena/OpenSearch Serviceによる大規模ログ分析の定義・役割・選択基準を追記。

5.1CloudWatch による可観測性

この節の要点

CloudWatch のログ(Logs / Logs Insights)、メトリクスとアラーム、カスタムメトリクスといった可観測性の基礎を理解します。DVA-C02 の「トラブルシューティングと最適化」の出発点です。

問題を素早く見つけて直すには、アプリのログ・メトリクス・トレースを見られることが不可欠です。AWS の中核が Amazon CloudWatch です。

5.1.1ログ・メトリクス・トレース

ログ(CloudWatch Logs・アプリ/Lambda の出力・Logs Insights でクエリ)、メトリクスとアラーム(数値の時系列・しきい値でアラーム・カスタムメトリクスも)、トレース(AWS X-Ray・リクエストの経路全体・遅い区間を特定)の3本柱を示した図。
CloudWatch の可観測性
  • ログCloudWatch Logs にアプリや Lambda の出力を集約。Logs Insights でクエリ・分析する。
  • メトリクス/アラーム:数値の時系列を収集し、しきい値超過でアラームを発報(通知やオートスケール)。
  • カスタムメトリクス:アプリ独自の指標(注文数など)を送信して監視できる。
試験ポイント

「ログの集約・クエリ=CloudWatch Logs / Logs Insights」「しきい値で通知/自動対応=CloudWatch アラーム」「独自指標=カスタムメトリクス」 は DVA で頻出です。Lambda のログは自動的に CloudWatch Logs に出力されます。

可観測性は「ログ・メトリクス・トレース」の三本柱で考えます。CloudWatch Logs はログをロググループ/ログストリームに集約し、保持期間を設定できます(無期限だと課金が増えるので適切に設定)。Logs Insights は専用のクエリ言語で大量ログを対話的に集計・絞り込みできます。メトリクス は数値の時系列で、CPU 使用率のような標準メトリクスのほか、アプリ独自の カスタムメトリクス(注文数など)を PutMetricData で送れます。アラーム はメトリクスがしきい値を超えた状態が一定期間続くと発報し、SNS 通知・Auto Scaling・自動アクションを起動します。複合条件を扱うコンポジットアラームもあります。これらを1画面で見せる ダッシュボード や、リアルタイムにログを処理する サブスクリプションフィルター(Lambda/Kinesis へ転送)も実務で多用します。

知りたいこと使うもの
何が起きたか(イベント/エラー)CloudWatch Logs / Logs Insights
どれだけ(数値の推移)メトリクス
しきい値超過で通知/自動対応アラーム(→SNS/Auto Scaling)
どこで時間がかかったかX-Ray トレース

シナリオ:Lambda のエラー急増に気づきたい。 Lambda のログは自動で CloudWatch Logs に出力されるので、メトリクスフィルターで「ERROR」行を数値メトリクス化し、アラームでしきい値超過時に SNS 通知。原因調査は Logs Insights で該当時間帯のログを絞り込み、相関 ID でリクエスト単位に追跡します。

補足

Q. Lambda のログはどこ? 自動で CloudWatch Logs。Q. 独自の指標を監視するには? カスタムメトリクス(PutMetricData)。Q. しきい値で自動対応するには? アラーム→SNS/Auto Scaling。Q. 大量ログの分析は? Logs Insights。

注意

混同に注意:
①ログ=「何が起きたか」、メトリクス=「数値の推移」、トレース=「どこで時間がかかったか」——役割を取り違えない。
②ログ保持期間を無期限にすると課金が膨らむ。
③標準メトリクスに無い指標はカスタムメトリクスで送る必要がある。

5.1.2ログを大規模に分析する(Athena・OpenSearch Service)

CloudWatch Logs Insights は便利ですが、S3 に集約した大量のログやアクセスログを SQL でアドホックに分析したい、あるいは全文検索とリッチなダッシュボードで可視化したい、という場面では別の選択肢が登場します。Amazon AthenaS3 上のデータを標準 SQL で直接クエリするサーバーレスのクエリサービスで、事前のロード不要・スキャンしたデータ量に応じた従量課金です。CloudTrail ログや ALB/CloudFront のアクセスログ、エクスポートしたアプリログを、必要なときだけ SQL で集計するのに向きます。Amazon OpenSearch Service全文検索・ログ分析の基盤で、ログを取り込んでインデックス化し、OpenSearch Dashboards で対話的に検索・可視化・アラートできます。判断の勘所は「S3 のデータを都度 SQL でアドホック分析=Athena」「全文検索や継続的なログ可視化ダッシュボード=OpenSearch Service」「運用ログの即時クエリ=CloudWatch Logs Insights」です。

やりたいこと選択
S3 のログを標準 SQL でアドホック分析Amazon Athena
全文検索とダッシュボードでログ可視化Amazon OpenSearch Service
運用ログを即時にクエリCloudWatch Logs Insights

5.1.3この節のまとめ

  • ログ(Logs/Insights)/メトリクス・アラーム/カスタムメトリクス
  • Lambda のログは自動で CloudWatch Logs へ

進捗の記録にはログインが必要です。

理解度チェック

(軽い確認用)

Q1. Lambda 関数のログ出力は既定でどこに集約されますか?

Q2. メトリクスがしきい値を超えたら通知やオートスケールを起動したい。何を使いますか?

Q3. 集約した大量のログを対話的にクエリ・分析できる CloudWatch の機能はどれですか?

理解度を確認第5章「トラブルシューティングと最適化」の問題を解く

学習の記録を残しませんか

参考書はすべて無料で読めます。無料登録すると、問題集での演習・既読と進捗の記録・間違えた問題の復習・ハイライトが使えます。