如何使用AWS Java SDK获取所有AWS资源标签的详细信息?

时间:2019-11-28 01:51:12

标签: java amazon-web-services aws-sdk

我是AWS的新手,所以这可能是一个简单的问题。

我的要求是获取所有已标记和未标记的AWS资源列表,并为JAVA中的已标记资源和未标记资源创建单独的报告。

我可以使用 JAVA 中的 aws-java-sdk-ec2 获得AWS EC2标记的资源和未标记的资源列表。

但是似乎很难为每个AWS服务使用单独的SDK以获取资源标签详细信息。

AWS提供了一种集中式方式,可以通过使用其标签API访问所有AWS资源标签详细信息,但是我不知道如何在 Java 中使用它们。

那么,如何获取不带标签的所有AWS资源列表和带标签的所有AWS资源列表?

谢谢。

1 个答案:

答案 0 :(得分:1)

您需要按此处所述在pom中使用Java AWS SDK顶级依赖项

<dependencies>
  <dependency>
    <groupId>com.amazonaws</groupId>
    <artifactId>aws-java-sdk</artifactId>
    <version>1.11.327</version>
  </dependency>
</dependencies>

第二,您可以致电AWSResourceGroupsTaggingAPI

例如 GetResourcesResult API

GetResources Result getResources(GetResourcesRequest getResourcesRequest)
  

返回所有已标记或先前标记的资源   在AWS帐户的指定区域中。您可以选择   在您的请求中指定过滤器(标签和资源类型),具体取决于   您想要返回的信息。响应包括所有标签   与请求相关的   resources.getResources(GetResourcesRequest getResourcesRequest)   返回位于的所有已标记或先前标记的资源   在AWS帐户的指定区域中。您可以选择   在您的请求中指定过滤器(标签和资源类型),具体取决于   您想要返回的信息。响应包括所有标签   与请求的资源相关联。

您可能想使用下面的AWSResourceGroupsTaggingAPIAsyncClient客户端,该客户端实现了此接口