【问题标题】:How to filter described images by name in DescribeImagesRequest?如何在 DescribeImagesRequest 中按名称过滤描述的图像?
【发布时间】:2013-05-22 10:52:12
【问题描述】:

我正在尝试检查是否存在特定的 AMI。所以,我在做:

val filter = new Filter().withName("Name").withValues(amiName)
val result = ec2.describeImages(new DescribeImagesRequest().withFilters(filter))
result.getImages.size() > 0

(代码是 Scala 而不是 Java,但这并不重要)。我收到以下异常:

com.amazonaws.AmazonServiceException: The filter 'Name' is invalid
    at com.amazonaws.http.AmazonHttpClient.handleErrorResponse(AmazonHttpClient.java:644) ~[aws-java-sdk-1.4.2.1.jar:na]
    at com.amazonaws.http.AmazonHttpClient.executeHelper(AmazonHttpClient.java:338) ~[aws-java-sdk-1.4.2.1.jar:na]
    at com.amazonaws.http.AmazonHttpClient.execute(AmazonHttpClient.java:190) ~[aws-java-sdk-1.4.2.1.jar:na]
    at com.amazonaws.services.ec2.AmazonEC2Client.invoke(AmazonEC2Client.java:6199) ~[aws-java-sdk-1.4.2.1.jar:na]
    at com.amazonaws.services.ec2.AmazonEC2Client.describeImages(AmazonEC2Client.java:2905) ~[aws-java-sdk-1.4.2.1.jar:na]

如何为 DescribeImagesRequest 正确定义过滤器?

【问题讨论】:

    标签: java amazon-web-services amazon-ec2


    【解决方案1】:

    TL;DR - 使用 name 而不是 Name 作为键。

    为了调查,我转向本地安装的 ec2 工具,然后运行

    ec2-describe-images -o self -F name=myaminame
    

    遇到了一个对 Google 更友好的类似错误:

    Filter definitions must have format 'name=value', but found 'name'
    

    谷歌搜索让我找到了这个blog post,然后从命令行开始工作:

    ec2-describe-images -o self -F "name=myaminame"
    

    现在,经过这次不相关的游览,我发现了一个简单的问题:我尝试将Name 作为键,而实际上键应该是小写的name

    【讨论】:

    • 干杯!刚遇到完全相同的问题,我在做Description 而不是description
    猜你喜欢
    • 2022-11-08
    • 2017-07-12
    • 1970-01-01
    • 2014-11-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-24
    • 1970-01-01
    相关资源
    最近更新 更多