查询使用 SQL 查询编辑器进行查询 (Amazon CLI) - Amazon Config
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

查询使用 SQL 查询编辑器进行查询 (Amazon CLI)

安装Amazon Command Line Interface(Amazon CLI),请参阅安装AmazonCLI中的Amazon CLI用户指南

查询资源配置数据

使用查询编辑器 (Amazon CLI) 查询针对单个账户和区域的资源配置数据

  1. 打开命令提示符或终端窗口。

  2. 键入以下命令查询您的资源配置数据。

    Amazon Configservice select-resource-config --expression "SELECT resourceId WHERE resourceType='AWS::EC2::Instance'"

    根据您的查询,输出将如下所示。

    { "QueryInfo": { "SelectFields": [ { "Name": "resourceId" } ] }, "Results": [ "{\"resourceId\":\"ResourceId\"}", "{\"resourceId\":\"ResourceId\"}", "{\"resourceId\":\"ResourceId\"}", "{\"resourceId\":\"ResourceId\"}", "{\"resourceId\":\"ResourceId\"}", "{\"resourceId\":\"ResourceId\"}", "{\"resourceId\":\"ResourceId\"}" ] }

使用查询编辑器 (Amazon CLI) 查询针对多个账户和区域的资源配置数据

  1. 打开命令提示符或终端窗口。

  2. 键入以下命令查询您的资源配置数据。

    Amazon Configservice select-aggregate-resource-config --expression "SELECT resourceId WHERE resourceType='AWS::EC2::Instance'" --configuration-aggregator-name my-aggregator

    根据您的查询,输出将如下所示。

    { "QueryInfo": { "SelectFields": [ { "Name": "resourceId" } ] }, "Results": [ "{\"resourceId\":\"ResourceId\"}", "{\"resourceId\":\"ResourceId\"}", "{\"resourceId\":\"ResourceId\"}", "{\"resourceId\":\"ResourceId\"}", "{\"resourceId\":\"ResourceId\"}", "{\"resourceId\":\"ResourceId\"}", "{\"resourceId\":\"ResourceId\"}" ] }
    注意

    在高级查询中使用 AWS::IAM::User 资源类型时,请使用 awsRegion = 'global'

保存查询

  1. 打开命令提示符或终端窗口。

  2. 键入以下命令可保存查询。

    Amazon Configservice put-stored-query --stored-query "{\"QueryName\": \"cli-test\", \"Expression\": \"SELECT *\", \"Description\": \"cli test query\" }" --tags "[{ \"Key\": \"first-tag\", \"Value\": \"\" }, { \"Key\": \"second-tag\", \"Value\": \"non-empty-tag-value\" }]"
  3. 根据您的查询,输出将如下所示。

    { "QueryArn": "arn:aws:config:eu-central-1:Account ID:stored-query/cli-test/query-e65mijt4rmam5pab" }
    注意

    --tags 为可选项。当您传递标签时,保存的标签将不会被list-stored-queries或者get-stored-query。您必须使用list-tag-for-resources检索已保存查询的关联标签。

    --description在创建或更新查询时是可选的。

查看所有已保存的查询

  1. 键入以下命令可查看所有已保存查询的列表。

    Amazon Configservice list-stored-queries
  2. 根据您的查询,输出将如下所示。

    { "StoredQueryMetadata": [ { "QueryId": "query-e65mijt4rmam5pab", "QueryArn": "arn:aws:config:eu-central-1:Account ID:stored-query/cli-test/query-e65mijt4rmam5pab", "QueryName": "cli-test" }, { "QueryId": "query-rltwlewlqfivadxq", "QueryArn": "arn:aws:config:eu-central-1:Account ID:stored-query/cli-test-2/query-rltwlewlqfivadxq", "QueryName": "cli-test-2", "Description": "cli test query" } ] } }

获取已保存查询的详细信息

  1. 键入以下命令可获取特定已保存查询的详细信息。

    Amazon Configservice get-stored-query --query-name cli-test
  2. 根据您的查询,输出将如下所示。

    { "StoredQuery": { "QueryId": "query-e65mijt4rmam5pab", "QueryArn": "arn:aws:config:eu-central-1:Account ID:stored-query/cli-test/query-e65mijt4rmam5pab", "QueryName": "cli-test", "Description": "cli test query", "Expression": "SELECT *" } }

删除保存的查询

  • 键入以下命令可删除您保存的查询。

    Amazon Configservice delete-stored-query --query-name cli-test

如果成功,则命令会运行,而没有附加输出。