Я пытаюсь создать скрипт монитора, который будет искать старые блоки ec2, запущенные, не запущенные, старше 7 дней, и они останутся в остановленном состоянии, а затем удалить их. Для этого мне нужно идентифицировать эти неиспользованные коробки. Значение LaunchTime является параметром даты, но я пытаюсь использовать параметр StateTransitionReason, и он содержит дату.
Это работает и показывает полный список:
aws ec2 describe-instances --filters 'Name=instance-state-name,Values=stopped' 'Name=tag:App_Name,Values=MYAPPS' 'Name=tag:Name,Values=development-*' --query 'Reservations[*].Instances[*].{Instance:InstanceId,StateTransitionReason:StateTransitionReason,Name:Tags[?Key==`Owner`]|[0].Value}'
Но еслиЯ пытаюсь это, ничего мне не показывает:
aws ec2 describe-instances --filters 'Name=instance-state-name,Values=stopped' 'Name=tag:App_Name,Values=MYAPPS' 'Name=tag:Name,Values=development-*' --query 'Reservations[*].Instances[?StateTransitionReason<="User initiated (2019-10-10 05:00:00 GMT)"].{Instance:InstanceId,StateTransitionReason:StateTransitionReason,Name:Tags[?Key==`Owner`]|[0].Value}'
StateTransitionReason - строковый параметр, но он содержит дату, есть ли способ отфильтровать более ранние даты, чем конкретные?
Я попытался проверить документацию AWS, но это не объясняет этого.