Skip to content

GuildEducationInc/RDS-Scanner

Repository files navigation

AWS Cost Optimizer Toolkit V2

A comprehensive AWS cost optimization and resource monitoring toolkit with real-time data, Google Sheets integration, and Slack notifications.

Features

  • Real-Time Data - All metrics fetched at scan time (no stale data)
  • Google Sheets Integration - Separate sheets per resource type with auto-formatting
  • Slack Notifications - Clickable Google Sheets hyperlinks with summary stats
  • Multi-Resource Scanning - RDS, Lambda, IAM Roles, CloudWatch Logs
  • RDS Extended Support - AWS Cost Explorer API for actual costs
  • Product-Friendly Tags - Clear messages for missing tags

Quick Start

# Install dependencies
pip install -r requirements-v2.txt

# Run the scanner
python cost_optimizer_v2.py \
    --google-credentials /path/to/credentials.json \
    --environment stage

Repository Structure

RDS_Scanner/
├── cost_optimizer_v2.py           # Main V2 scanner script
├── requirements-v2.txt            # Python dependencies
├── COST_OPTIMIZER_V2_README.md    # Detailed V2 documentation
├── README.md                      # This file
├── .gitignore                     # Git ignore rules
│
├── .github/workflows/
│   └── cost-optimizer-v2.yml     # GitHub Actions workflow
│
├── rds-scanner-complete/
│   └── cost-optimizer-v2-cloudformation.yaml  # CloudFormation template
│
├── results/                       # Scan output files (CSV, logs)
│   └── *.csv
│
└── backup/                        # Old V1 files (for reference)
    ├── v1_scripts/               # V1 Python scripts
    ├── v1_workflows/             # V1 GitHub Actions
    ├── v1_docs/                  # V1 documentation
    └── v1_cloudformation/        # V1 CloudFormation templates

Slack Webhook

The Slack webhook URL is stored securely in GitHub Secrets as SLACK_WEBHOOK_URL. For local testing, set the environment variable or use --slack-webhook CLI argument.

Google Drive Shared Folder

Reports are automatically saved to the shared drive folder:

Folder ID: 0AMxvbDorapuoUk9PVA

Tag Messages

When resources are missing tags, the following product-friendly messages are displayed:

Tag Missing Tag Message
Owner No Owner Tag - Please add 'Owner' tag to this resource
Contact No Contact Tag - Please add 'Contact' tag to this resource
Service No Service Tag - Please add 'Service' tag to this resource
Repo No Repo Tag - Please add 'Repo' tag to this resource

AWS Accounts

Multi-account support:

Environment AWS Account
Development 477873552632 (guild-dev)
Staging 221203628080 (guild-staging)
Production 947618278001 (guild-prod)

Documentation

GitHub Actions

The workflow runs automatically:

  • Sunday at 2 AM Mountain Time (9 AM UTC) - Weekly scan with report

Manual trigger available via GitHub Actions UI.

Cost Estimate

Estimated monthly AWS costs: $1-2/month

  • Lambda: ~$0.50
  • S3: ~$0.10
  • CloudWatch Logs: ~$0.50

License

Internal use only - Guild Education, Inc.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •