この記事は、大部分の作業をAIが担当しています。
- 一次情報の検索...AIが担当
- 検索した情報の要約...AIが担当
- ファクトチェック...人間が担当
この記事はファクトチェックが済んでいません。
- 対象知識:
• データソースを提供する AWS サービスの機能とユースケース (ログレベル、タイプ、詳細度、頻度、適時性、不変性など)
• ロギング機能を提供する AWS のサービスと機能 (VPC フローログ、 DNS ログ、CloudTrail、CloudWatch Logs など)
• ロギングに必要なアクセス許可- 対象スキル:
• 設定ミスを特定し、ロギングに必要なアクセス許可がない場合の修正手順を決定 (読み取り/書き込み権限、S3 バケットのアクセス許可、パブリックアクセス、整合性の管理など)
• ログが見つからない原因を特定し、修正手順を実行
以下は、タスクステートメント 2.4: ロギングソリューションのトラブルシューティングを行う を理解・実装するために役立つ AWS 公式一次情報 のまとめです。
各公式ドキュメントの重要ポイントとリンクを Markdown 形式 で整理しました。
📌 1. VPC フローログのトラブルシューティング — AWS公式ドキュメント
🔗 Troubleshoot VPC Flow Logs
https://docs.aws.amazon.com/ja_jp/vpc/latest/userguide/flow-logs-troubleshooting.html (AWS ドキュメント)
🔎 よくある問題と解決策
❗1) フローログがアクティブでもログが見えない
- フローログは作成後、しばらく待つ必要 があることがあります(ロググループ生成まで数分以上)。
- ネットワークインターフェイスでトラフィックが発生していない とログが作成/表示されません。(AWS ドキュメント)
❗2) ログ配信エラー
-
Access errorが発生する場合は IAM ロールのアクセス許可(CloudWatch Logs への書き込み権限等) が不足している可能性があります。 - IAM ロールに 信頼関係で VPC Flow Logs サービスを許可 しているかを確認します。(AWS ドキュメント)
❗3) S3 配信エラー / LogDestinationNotFoundException
- S3 バケットが存在しない、またはバケットにログ配信権限がない場合に発生します。
- バケットのポリシーで ログ配信サービス (log delivery) を許可 する必要があります。(AWS ドキュメント)
📌 2. CloudTrail のトラブルシューティング — AWS公式ドキュメント
🔗 Troubleshooting issues with an organization trail (CloudTrail)
https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-troubleshooting.html (AWS ドキュメント)
🔎 主要トラブルと対処ポイント
🔹 ログが S3 に配信されない
- CloudTrail の S3 配信が失敗する場合、S3 バケットのアクセスポリシーに問題がある 可能性があります。
- CloudTrail コンソール上で「配信失敗」の警告が出る場合、get-trail-status で
LatestDeliveryErrorを確認し、S3 バケットのポリシーを修正します。(AWS ドキュメント)
🔹 CloudWatch Logs への配信エラー
- CloudTrail → CloudWatch Logs 配信が失敗した場合、CloudWatch Logs 用の IAM ロールポリシー設定 が正しいかを確認します。
- エラーは
LatestCloudWatchLogsDeliveryErrorに表示されます。(AWS ドキュメント)
🔹 多重リージョン/組織トレイル関連
- 組織トレイルの場合、対象リージョンで CloudTrail が有効か・サービスリンクロールが拒否されていないかも確認が必要です。(AWS ドキュメント)
📌 3. CloudWatch Logs のアクセスエラーのトラブルシューティング
🔗 Troubleshoot CloudWatch logs and metrics access errors
https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-IM-troubleshooting.html (AWS ドキュメント)
🔎 例: CloudWatch Logs にアクセスできない場合
-
Log group が存在しない / 見えない
→ リージョンを確認したり、ロググループ名のミス確認。 -
PutLogEvents でアクセス拒否エラー
→ ロールやリソースポリシーでlogs:PutLogEvents/logs:CreateLogStreamなどのアクセス権限があるか確認。 -
スロットリング / メトリクスの制限
→ PutLogEvents がスロットルされると CloudWatch Logs が受け取れない場合があります。
(コンソールや API レスポンスのエラーコードを参照) (AWS ドキュメント)
📌 4. CloudTrail イベントタイプとログ設定の確認
🔗 Enabling CloudTrail event logging for S3 buckets and objects
https://docs.aws.amazon.com/AmazonS3/latest/userguide/enable-cloudtrail-logging-for-s3.html (AWS ドキュメント)
🔎 重要設定ポイント
- デフォルトでは CloudTrail は管理イベントのみ をログに出力します。
- バケット内のオブジェクトレベルの API 操作を取得するには データイベントの有効化 が必要です。(AWS ドキュメント)
※ ログが見つからない場合は、Trails のイベントタイプ設定 や CloudWatch 統合設定 を確認してください。(AWS ドキュメント)
📌 5. CloudWatch Logs のデータソース確認
🔗 CloudWatch Logs のデータソース検出
https://docs.aws.amazon.com/ja_jp/AmazonCloudWatch/latest/logs/data-source-discovery-management.html (AWS ドキュメント)
🔎 補足ポイント
- CloudWatch Logs はログを 自動分類 し、データソースやタイプ単位で整理できます。
- もし CloudWatch Logs にログが入っているが見えない場合、ロググループやログタイプの分類状態を確認 することで原因特定に役立ちます。(AWS ドキュメント)
📌 6. IAM とアクセス許可の一般トラブルシューティング
🔹 IAM Role for Logging
✔ 各サービス(VPC Flow Logs, CloudTrail, CloudWatch Logs)がログを正しく書き込むための IAM ロール権限 を必要とします。
例: VPC Flow Logs 用ロールは CloudWatch Logs に書き込む権限が必要です。(AWS ドキュメント)
🔹 Resource Policies / Bucket Policies
✔ S3 保存先にログを書き込む場合、S3 バケットポリシーでログ配信サービスを許可 する必要があります(例: CloudTrail からの PutObject/IAM Role 設定等)。 (AWS ドキュメント)
📌 7. よくある「ログが見つからない」原因と修正手順
| 現象 | 検証ポイント | 修正 |
|---|---|---|
| フローログが CloudWatch Logs に表示されない | フローログ Active だがロググループなし → トラフィック発生 or 作成待ち | 数分待つ/トラフィック生成確認 |
| フローログが S3 にない | S3 バケット ARN 書式間違い / ポリシー不許可 | ARN 修正 / バケットポリシー更新 (AWS ドキュメント) |
| CloudTrail がログを配信しない | S3 バケットポリシーが CloudTrail 書き込み不可 | ポリシー修正 / get-trail-status でエラー確認 (AWS ドキュメント) |
| CloudWatch Logs でアクセス拒否 | IAM ロールが logs:PutLogEvents など不足 | 適切なログ書き込み権限を追加 |
| CloudTrail で期待イベントが出ない | データイベント未有効 / 要素未設定 | データイベントを有効化 (AWS ドキュメント) |
🧠 まとめ
トラブルシューティングの主要観点
-
設定ミスの検出
- ロール権限(IAM role/trust relationship)
- バケットポリシー
- ロググループ命名/リージョン設定
- Event delivery の有効化設定
-
ログ配信状態の確認
- CloudTrail の
get-trail-statusでエラー出力を確認 (AWS ドキュメント) - VPC Flow Logs の状態と DeliverLogsErrorMessage を確認 (AWS ドキュメント)
- CloudTrail の
-
ログ存在/タイミング
- ログは作成後数分ほど遅延する場合あり
- データイベントが収集対象となっているか確認 (AWS ドキュメント)
-
アクセス許可 (IAM / Resource / Bucket)
- PutLogEvents / CreateLogStream / S3 PutObject など最低限権限を付与