リソースが存在するのに AWS Config の高度なクエリの検出結果が表示されない原因を教えてください
こんにちは。
テクサポの大森です。
娘の誕生日が近いのでアンパンマンのキッズカメラを買いました。
最近のおもちゃの性能はすごいですね。
問題
リージョン内の EC2 インスタンスの一覧を取得したいのですが、高度なクエリを実行しても結果が表示されません。
どうしたらいいでしょうか。
原因
高度なクエリは設定レコーダーによって記録されるよう設定されていないリソースのクエリをサポートしていません。(参考1)
解決方法
AWS Config のレコーダー設定を更新してクエリするリソースタイプを記録対象に追加してください。
確認してみた
① EC2 インスタンスを作成
② CloudShell でインスタンスの一覧が取得できることを確認
③高度なクエリでインスタンスの一覧を取得するクエリを実行
CloudShell で結果が表示されているにも関わらずクエリの結果が表示されません。
④ AWS Config の設定レコーダーで「 AWS EC2 Instance 」を追加
⑤高度なクエリで再度インスタンスの一覧を取得するクエリを実行
結果が表示されました。
※データが取得できるまでタイムラグがあります
最後に
高度なクエリで存在するはずのリソースの情報が取得できない際は、AWS Config のレコーダーに対象のリソースタイプの記録設定が存在するか確認してみてください。
この記事がどなたかのお役に立てれば幸いです。
参考
1.AWS Config を使用して AWS リソースの現在の設定状態を照会する
アドバンストクエリは、設定レコーダーによって記録されるように設定されていないリソースのクエリをサポートしていません。