AWS 在 Java 中获取实例名称

AWS get instance name in Java

我正在 Java 中开发应用程序,我可以列出实例:

for (Reservation reservation : result.getReservations()) {
    for (Instance instance : reservation.getInstances()) {
        System.out.println("Instance id:"
                + instance.getInstanceId());
    }
}

如何获取实例名称?

您可以访问与实例关联的标签:

for (Reservation reservation : result.getReservations()) {
    for (Instance instance : reservation.getInstances()) {
        System.out.println("Instance id:" + instance.getInstanceId());

        if (instance.getTags() != null) {
            for (Tag tag : instance.getTags()) {
                System.out.println(String.format(
                    "%s: %s", 
                    tag.getKey(), 
                    tag.getValue()
                ));
            }
        }
    }
}

要获取实例名称,您需要使用如下内容:

        for (Reservation reservation : response.getReservations()) {
            for (Instance instance : reservation.getInstances()) {
                Tag tagName = instance.getTags().stream()
                        .filter(o -> o.getKey().equals("Name"))
                        .findFirst()
                        .orElse(new Tag("Name", "name not found"));

                System.out.println("Found instance with ID: " + instance.getInstanceId()
                        + ", NAME: " + tagName.getValue()
                        + ", TYPE: " + instance.getInstanceType()
                );
            }
        }

通过这种方式,您可以提取具有键的标签:"Name",值是您需要的。