Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
{
"run_id": "28487098887",
"target": "finops-aws",
"provider": "aws",
"check_id": "aws-finops-unattached-volume",
"check_file": "finops-aws/unattached-volumes.yaml",
"check_name": "Unattached EBS volumes",
"query": "SELECT volumeId, size, status, AvailabilityZone, volumeType, createTime\nFROM aws.ec2_native.volumes\nWHERE region = 'ap-southeast-2'",
"severity": "LOW",
"category": "waste",
"kind": null,
"region": "ap-southeast-2",
"suggested_remediation": {
"type": "delete",
"tool": "stackql",
"preflight_query": "SELECT volumeId FROM aws.ec2_native.volumes WHERE region = 'ap-southeast-2' AND volumeId = 'vol-0587b977863c0dead' AND status = 'available'\n",
"sql_query": "DELETE FROM aws.ec2.volumes WHERE region = 'ap-southeast-2' AND VolumeId = 'vol-0587b977863c0dead'\n",
"command": null,
"description": "Delete the unattached EBS volume (snapshot first if its data may be needed)."
},
"fields": {
"AvailabilityZone": "null",
"createTime": "2026-01-09T03:00:11.937Z",
"size": "1",
"status": "available",
"volumeId": "vol-0587b977863c0dead",
"volumeType": "gp2",
"region": "ap-southeast-2",
"category": "waste",
"estimated_monthly_usd": 0.1
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
SELECT volumeId FROM aws.ec2_native.volumes WHERE region = 'ap-southeast-2' AND volumeId = 'vol-0587b977863c0dead' AND status = 'available'
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
**What & where:** This proposal deletes unattached EBS volume `vol-0587b977863c0dead` (1 GiB, `gp2`) in region `ap-southeast-2`. The volume reports `status = available`, meaning it is not attached to any instance, and the DELETE is gated behind a preflight query that re-confirms both the volume id and the `available` status before any action is taken.

**Confidence: high.** The detection is unambiguous — an EBS volume in the `available` state is chargeable but serving no workload, and the preflight guard makes the deletion idempotent and safe against a race where the volume was re-attached.

**Captain's call:** The volume was created at `2026-01-09T03:00:11.937Z`, so it is relatively recent; confirm it is not a just-provisioned volume awaiting attachment before deleting. Its `AvailabilityZone` field is empty/null in the finding, which is unusual and worth a sanity check against the console. At only 1 GiB there is no size or age red flag, but per the upstream description you may wish to snapshot first if the data could still be needed.

**Estimated monthly saving:** ~$0.1 USD.
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
DELETE FROM aws.ec2.volumes WHERE region = 'ap-southeast-2' AND VolumeId = 'vol-0587b977863c0dead'