Skip to content

Add resource-level cost breakdown via CUR/Athena#4

Merged
Alexanderamiri merged 2 commits into
mainfrom
feat/cur-cost-analytics
Mar 26, 2026
Merged

Add resource-level cost breakdown via CUR/Athena#4
Alexanderamiri merged 2 commits into
mainfrom
feat/cur-cost-analytics

Conversation

@Alexanderamiri
Copy link
Copy Markdown
Member

Summary

  • New --resources / -r flag on javabin status for resource-level cost drilldown from CUR data via Athena
  • New --period flag (day, week, month) to control the time window
  • Athena query functions: RunAthenaQuery and GetTeamResourceCosts in internal/aws
  • Graceful degradation when CUR data is unavailable

Depends on javaBin/platform#103 being applied first (provisions the CUR export, Glue, and Athena workgroup).

Example output

$ javabin status --team platform --resources

Team: platform

--- Costs (month-to-date) ---
  Team spend: $45.23

--- Top Resources (month) ---
  javabin-cur-553637109631         AmazonS3             $12.50
  platform-api                     AmazonECS            $8.30
  javabin-cost-report              AWSLambda            $4.10

--- ECS Services ---
  platform-api  running=1 desired=1

Test plan

  • go build ./... compiles clean
  • javabin status --team platform works without --resources (no Athena dependency)
  • javabin status --team platform --resources shows resource breakdown (after CUR data is available)
  • javabin status --team platform --resources --period week narrows time window

- New --resources/-r flag on status command for resource-level cost drilldown
- New --period flag (day/week/month) to control time window
- Athena query functions in internal/aws (RunAthenaQuery, GetTeamResourceCosts)
- Graceful degradation when CUR data is unavailable
@Alexanderamiri Alexanderamiri merged commit 35dac57 into main Mar 26, 2026
@Alexanderamiri Alexanderamiri deleted the feat/cur-cost-analytics branch March 26, 2026 23:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant