Skip to content

v2.6.4

Choose a tag to compare

@beywesley beywesley released this 12 May 20:08
· 234 commits to main since this release
9f4448a

Release v1.0.0 — 2025-05-12

New Features

  • Granular “Usage Type” reporting
    • Groups all Cost Explorer data by Name tag + USAGE_TYPE (two‐dimensional)
    • Exposes every single usage‐type line (EBS capacity, IOPS, throughput; DataTransfer bytes; EC2 AMI operations; etc.)
  • Resource-Type Summary per Tag
    • Introduces a lookup (USAGE_TYPE_TO_RESOURCE_TYPE) mapping common usage‐type prefixes to human-friendly resource types (EBS Volume, EC2 Instance, VPC, CloudWatch, etc.)
    • Renders a “Resource Type: …” line immediately under each tag header

Improvements

  • Cost-threshold filtering
    • New MIN_ITEM_COST env var (e.g. 0.003, 0.0000005)
    • Skips any usage‐type whose total is below the configured threshold
  • Tag-only sections
    • Completely excludes any “untagged” or blank Name-tag sections from the report

Bug Fixes

  • Latin-1 encoding error
    • Patches FPDF’s missing unifontsubset attribute to avoid Unicode/latin-1 codec failures
  • Zero-dollar noise
    • No more $0.00 line items—even sub-cent charges below threshold are automatically filtered

PDF Report Layout

  1. Header
    • Customer name, AWS account ID, period
  2. Per-Tag Section
    • Tag name (bold, colored background)
    • Resource Type: comma-separated list
    • Two-column table: Usage Type | Cost
    • Service-level subtotals and per-tag grand total

Configuration

  • Required env vars:
    • REPORT_BUCKET (S3 bucket for PDF)
    • REPORT_TAG_KEY (defaults to Name)
  • Optional env vars:
    • REPORT_TIME_PERIOD_START / REPORT_TIME_PERIOD_END (override default last-month window)
    • CUSTOMER_IDENTIFIER (display name)
    • MIN_ITEM_COST (minimum cost cutoff, defaults to 0.0)

Next Steps

  • Expand USAGE_TYPE_TO_RESOURCE_TYPE mapping to cover any custom or rare usage-types you spot.
  • Consider adding a “Service subtotal” row if you need grouping by SERVICE as well.
  • Integrate with CloudWatch Events or Step Functions to schedule monthly delivery automatically.