Skip to content

Amazon QuickSight resources to be used along with CUDOS Cloud Intelligence Dashboards to analyze AWS Cost and Usage Report (CUR) Data Exports.

Notifications You must be signed in to change notification settings

jay-giametta/AWS-CUR-ResourceAnalyzer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 

Repository files navigation

AWS CUR Resource Analyzer

Amazon QuickSight resources to be used along with CUDOS Cloud Intelligence Dashboards to analyze AWS Cost and Usage Report (CUR) Data Exports.

Dependencies

This stack must be installed after CUDOS has been successfully deployed. It depends on automated CUR updates and ingestion from the Cloud Intelligence Dashboards and should be installed in the same account.

Installation

Users should follow the directions in the AWS CloudFormation User Guide to create a stack from the CloudFormation console using the cur_resource_analyzer_cloudformation.json file in this repository.

CloudFormation

Parameters

Parameter Description Default
CurDbName The name of the CUR database. This information can be found in Athena. "cur"
CurTableName The name of the CUR table. This information can be found in Athena. "customer_all"
CurAppNameCol The name of the CUR column containing application name tag info. This information can be found in Athena. Leave asproduct_servicecodeif app-level tagging is unavailable. "product_servicecode"

Note: See the following AWS Well-Architected Cost Optimization Workshop for help with Cost and Usage Analysis - SQL in Athena.

Resources

CurDataSource (AWS::QuickSight::DataSource)

  • Creates a QuickSight data source connected to Athena

ResourceAnalyzerDataset (AWS::QuickSight::DataSet)

Creates a dataset with three main SQL queries:

  • account_map: Maps account IDs to account names and parent accounts
  • resource_analyzer: Main query extracting cost and usage data
  • app_first_seen: Tracks when applications were first seen in billing data

ResourceViewAnalysis (AWS::QuickSight::Analysis)

Creates a QuickSight analysis with two sheets:

Sheet 1: "Application Info"

Shows cost distribution by application. Includes visualizations for:

  • Costs by date first seen
  • 30-day costs by application
  • 30-day costs by group
  • Cost details in a pivot table
  • Application dates
  • Number of apps by date first seen
Sheet 2: "AWS Product/Resource Info"

Shows detailed AWS product and resource information. Includes visualizations for:

  • 30-day costs by operation
  • 30-day costs by product family
  • AWS product/resource costs in a detailed pivot table

Features

  • Interactive filtering capabilities
  • Parameter controls for:
    • Application
    • Operation
    • Product family
    • Account group
  • Date range filtering
  • Drill-down capabilities
  • Currency formatting
  • Customized layouts and visual settings

Other Information

Account Groups
Groups in the analysis refer to account groups that are split by grouping linked accounts that have similar names. The groupings depend on the presence of basic string delimeters and use the following QuickSight function:toLower(split(replace({account_name},':','-'),'-',1)).

QuickSight Permissions
QuickSight users will need to be granted access to the newly created assets. Directions for this process can be found in the Amazon Quicksight User Guide - Managing assets section.

Screenshots

screenshot

Disclaimer

This code was created for educational purposes and should be analyzed, modified and tested in your own environment prior to any production use.

About

Amazon QuickSight resources to be used along with CUDOS Cloud Intelligence Dashboards to analyze AWS Cost and Usage Report (CUR) Data Exports.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published