aws ec2 describe-instances --filters

1

Hi, am wondering if applying filters on aws cli "ec2 describe-instances --filters [] " would filter the result set before fetching it over the network or at the client? E.g., I have 10 instances in my account, of which only 5 are 'Running' and I want to see the details of only those. My understanding after reading the docs in this case is that, backend API would simply fetch everything and filters would be applied at the client before displaying results. This means bringing over unnecessary data over the network. Is this the right understanding? If so, is there any way to "run filter at source itself"?

AWS
Vish_t
gefragt vor 2 Jahren1086 Aufrufe
1 Antwort
1
Akzeptierte Antwort

The --filter(s) parameter uses server-side filtering, returning only the data with matching results.

In contrast, the --query parameter utilises client-side filtering, returning all data to the client prior to matching.

For more info, take a look at https://docs.aws.amazon.com/cli/latest/userguide/cli-usage-filter.html

AWS
bendutt
beantwortet vor 2 Jahren
  • Thanks, it helps. I'm pasting a sample code from boto3 docs,

    instances = ec2.instances.filter( Filters=[{'Name': 'instance-state-name', 'Values': ['running']}])

    Can I assume that this 'filter' would work the same way, since both use the same backend API?

  • Yes, that would be using server-side filtering

Du bist nicht angemeldet. Anmelden um eine Antwort zu veröffentlichen.

Eine gute Antwort beantwortet die Frage klar, gibt konstruktives Feedback und fördert die berufliche Weiterentwicklung des Fragenstellers.

Richtlinien für die Beantwortung von Fragen