Check Categories
ZapStack runs three types of checks:- Unused - Resources that exist but aren’t being used
- Optimization - Resources that could be configured more efficiently
- Idle - Resources with minimal utilization
EC2 Checks
Idle EC2 Instances
ID:
ec2-idle-instanceIdentifies EC2 instances with average CPU utilization below 5% over the past 14 days.Recommendation: Consider stopping or terminating idle instances, or right-sizing to a smaller instance type.Graviton Migration
ID:
ec2-graviton-eligibleIdentifies x86-based instances that could be migrated to Graviton (ARM) for cost savings.Recommendation: Graviton instances offer up to 40% better price-performance. Test workload compatibility and migrate.EBS Checks
Unattached Volumes
ID:
ebs-unattached-volumeIdentifies EBS volumes not attached to any EC2 instance.Recommendation: Delete unneeded volumes or attach to instances. Consider snapshotting before deletion.GP2 to GP3 Migration
ID:
ebs-gp2-to-gp3Identifies GP2 volumes that could be migrated to GP3 for cost savings.Recommendation: GP3 provides the same performance at 20% lower cost. Migration can be done online with no downtime.Old Snapshots
ID:
ebs-old-snapshotIdentifies EBS snapshots older than 90 days.Recommendation: Review and delete snapshots that are no longer needed. Consider implementing lifecycle policies.RDS Checks
Idle RDS Instances
ID:
rds-idle-instanceIdentifies RDS instances with no database connections over the past 14 days.Recommendation: Stop or delete idle databases. Consider using RDS snapshot for backup before deletion.Reserved Instance Coverage
ID:
rds-ri-coverageIdentifies on-demand RDS instances that could benefit from Reserved Instance pricing.Recommendation: Purchase Reserved Instances for steady-state workloads to save up to 60%.DynamoDB Checks
Idle Tables
ID:
dynamodb-idle-tableIdentifies DynamoDB tables with no read or write activity over the past 14 days.Recommendation: Delete unused tables or consider on-demand capacity mode for sporadic access patterns.On-Demand vs Provisioned
ID:
dynamodb-capacity-modeAnalyzes table access patterns to recommend optimal capacity mode.Recommendation: Switch to on-demand for unpredictable workloads, or provisioned with auto-scaling for steady workloads.Lambda Checks
Unused Functions
ID:
lambda-unused-functionIdentifies Lambda functions with no invocations over the past 30 days.Recommendation: Delete unused functions to reduce clutter and potential security surface.Memory Right-Sizing
ID:
lambda-memory-sizingAnalyzes Lambda function memory utilization to identify over-provisioned functions.Recommendation: Reduce memory allocation to match actual usage. Use AWS Lambda Power Tuning for optimization.S3 Checks
Incomplete Multipart Uploads
ID:
s3-incomplete-multipartIdentifies S3 buckets with incomplete multipart uploads consuming storage.Recommendation: Configure lifecycle rules to automatically abort incomplete uploads after 7 days.Elastic IP Checks
Unattached Elastic IPs
ID:
eip-unattachedIdentifies Elastic IPs not associated with any resource.Recommendation: Release unused Elastic IPs. AWS charges for unattached EIPs.Security Group Checks
Unused Security Groups
ID:
sg-unusedIdentifies security groups not attached to any resource.Recommendation: Delete unused security groups to reduce clutter and simplify security management.Load Balancer Checks
Idle Load Balancers
ID:
elb-idleIdentifies load balancers with no healthy targets or minimal traffic.Recommendation: Delete unused load balancers to eliminate hourly charges.
