Skip to main content

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

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

Flags​

Input Type​

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

Uses​

Test Results πŸŸ’β€‹

Generated at: 2025-04-24T23:44:33.549202796Z 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()βœ”οΈ 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βœ”οΈ 599βœ”οΈ extract('CA10__averageCpuTwoWeeks__c') < number(40.0) && extract('CA10__maxCpuTwoWeeks__c') < number(50.0)βœ”οΈ null
🟒test7βœ”οΈ 600βœ”οΈ otherwiseβœ”οΈ null
🟒test8βœ”οΈ 600βœ”οΈ otherwiseβœ”οΈ null

Generation​

FileMD5
Open/ce/ca/aws/ec2/instance-underutilized/policy.yamlC4CB6F8AD2A84D4C11F1849F38D98E24
Open/ce/ca/aws/ec2/instance-underutilized/prod.logic.yamlDDCD2362BD605FF851FC43CEF1F10C22
Open/types/CA10__CaAwsInstance__c/object.extracts.yaml802FA80DBDE640AF85A69B42E51E0CCD
Open/ce/ca/aws/ec2/instance-underutilized/test-data.jsonCD875929481C4FD5AD94E09A0F909682

Generate FULL script​

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

Generate DEBUG script​

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

Generate CAPTURE_TEST_DATA script​

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

Generate TESTS script​

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

Execute tests​

java -jar repo-manager.jar policies test /ce/ca/aws/ec2/instance-underutilized/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 underutilized."
check:
OR:
args:
- IS_EMPTY:
arg:
EXTRACT: "CA10__averageCpuTwoWeeks__c"
- IS_EMPTY:
arg:
EXTRACT: "CA10__maxCpuTwoWeeks__c"
- status: INAPPLICABLE
currentStateMessage: "The instance is idle and considered by the 'AWS EC2 Instance is idle' policy."
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
- status: "INCOMPLIANT"
currentStateMessage: "The instance is underutilized with Average CPU Utilization < 40%\
\ and Max CPU Utilization < 50%."
remediationMessage: "Consider rightsizing, consolidating or terminating the instance."
check:
AND:
args:
- LESS_THAN:
left:
EXTRACT: CA10__averageCpuTwoWeeks__c
right:
NUMBER: 40.0
- LESS_THAN:
left:
EXTRACT: CA10__maxCpuTwoWeeks__c
right:
NUMBER: 50.0
otherwise:
status: "COMPLIANT"
currentStateMessage: 'The instance is not underutilized.'