Skip to main content

🧠 AWS EC2 Instance is idle - prod.logic.yaml 🟒

  • Contextual name: 🧠 prod.logic.yaml 🟒
  • ID: /ce/ca/aws/ec2/instance-idle/prod.logic.yaml
  • Located in: πŸ“ AWS EC2 Instance is idle 🟒

Flags​

Input Type​

TypeAPI NameExtractsExtract FilesLogic Files
πŸ”’πŸ“• AWS EC2 InstanceCA10__CaAwsInstance__c12244

Uses​

Test Results πŸŸ’β€‹

Generated at: 2025-04-24T23:44:31.296505705Z Open

ResultIdCondition IndexCondition TextRuntime Error
🟒test1βœ”οΈ 99βœ”οΈ isDisappeared(CA10__disappearanceTime__c)βœ”οΈ null
🟒test2βœ”οΈ 199βœ”οΈ extract('CA10__stateName__c') != 'running'βœ”οΈ null
🟒test3βœ”οΈ 299βœ”οΈ extract('CA10__currentRunningTime__c') < number(14.0)βœ”οΈ null
🟒test4βœ”οΈ 399βœ”οΈ extract('CA10__averageCpuTwoWeeks__c').isEmpty() || extract('CA10__maxCpuTwoWeeks__c').isEmpty() || extract('CA10__sumTwoWeekNetworkInMb__c').isEmpty() || extract('CA10__sumTwoWeekNetworkOutMb__c').isEmpty()βœ”οΈ null
🟒test5βœ”οΈ 499βœ”οΈ extract('CA10__averageCpuTwoWeeks__c') < number(5.0) && extract('CA10__maxCpuTwoWeeks__c') < number(15.0) && extract('CA10__sumTwoWeekNetworkInMb__c') < number(100.0) && extract('CA10__sumTwoWeekNetworkOutMb__c') < number(100.0)βœ”οΈ null
🟒test6βœ”οΈ 500βœ”οΈ otherwiseβœ”οΈ null

Generation​

FileMD5
Open/ce/ca/aws/ec2/instance-idle/policy.yaml25948976F20A4DC63E82F86EF6774D48
Open/ce/ca/aws/ec2/instance-idle/prod.logic.yaml7ABDF6E05E29D6EF41BE533DBFF1FBDD
Open/ce/ca/aws/ec2/instance-idle/test-data.json7AA1A2BDF5E1BAF659C7592DB8E34665
Open/types/CA10__CaAwsInstance__c/object.extracts.yaml802FA80DBDE640AF85A69B42E51E0CCD

Generate FULL script​

java -jar repo-manager.jar policies generate FULL /ce/ca/aws/ec2/instance-idle/prod.logic.yaml

Generate DEBUG script​

java -jar repo-manager.jar policies generate DEBUG /ce/ca/aws/ec2/instance-idle/prod.logic.yaml

Generate CAPTURE_TEST_DATA script​

java -jar repo-manager.jar policies generate CAPTURE_TEST_DATA /ce/ca/aws/ec2/instance-idle/prod.logic.yaml

Generate TESTS script​

java -jar repo-manager.jar policies generate TESTS /ce/ca/aws/ec2/instance-idle/prod.logic.yaml

Execute tests​

java -jar repo-manager.jar policies test /ce/ca/aws/ec2/instance-idle/prod.logic.yaml

Content​

Open File

---
inputType: "CA10__CaAwsInstance__c"
importExtracts:
- file: "/types/CA10__CaAwsInstance__c/object.extracts.yaml"
testData:
- file: 'test-data.json'
conditions:
- status: "INAPPLICABLE"
currentStateMessage: "The instance is not running."
check:
NOT_EQUAL:
left:
EXTRACT: "CA10__stateName__c"
right:
TEXT: "running"
- status: "INAPPLICABLE"
currentStateMessage: "The instance has been running for less than 14 days."
check:
LESS_THAN:
left:
EXTRACT: "CA10__currentRunningTime__c"
right:
NUMBER: 14.0
- status: UNDETERMINED
currentStateMessage: "There is not enough data in the CMDB to identify if the instance is idle."
check:
OR:
args:
- IS_EMPTY:
arg:
EXTRACT: "CA10__averageCpuTwoWeeks__c"
- IS_EMPTY:
arg:
EXTRACT: "CA10__maxCpuTwoWeeks__c"
- IS_EMPTY:
arg:
EXTRACT: CA10__sumTwoWeekNetworkInMb__c
- IS_EMPTY:
arg:
EXTRACT: CA10__sumTwoWeekNetworkOutMb__c
- status: INCOMPLIANT
currentStateMessage: "The instance is idle with Average CPU Utilization < 5%,\
\ Max CPU Utilization < 15%, and Average Network I/O < 100 MB."
remediationMessage: "Consider stopping, terminating, or rightsizing the instance."
check:
AND:
args:
- LESS_THAN:
left:
EXTRACT: CA10__averageCpuTwoWeeks__c
right:
NUMBER: 5.0
- LESS_THAN:
left:
EXTRACT: CA10__maxCpuTwoWeeks__c
right:
NUMBER: 15.0
- LESS_THAN:
left:
EXTRACT: CA10__sumTwoWeekNetworkInMb__c
right:
NUMBER: 100.0
- LESS_THAN:
left:
EXTRACT: CA10__sumTwoWeekNetworkOutMb__c
right:
NUMBER: 100.0
otherwise:
status: "COMPLIANT"
currentStateMessage: 'The instance is not idle.'