COST03-BP01 Configure detailed information sources
Set up cost management and reporting tools for enhanced analysis and transparency of cost and usage data. Configure your workload to create log entries that facilitate the tracking and segregation of costs and usage.
Level of risk exposed if this best practice is not established: High
Implementation guidance
Detailed billing information such as hourly granularity in cost management tools allow organizations to track their consumptions with further details and help them to identify some of the cost increase reasons. These data sources provide the most accurate view of cost and usage across your entire organization.
You can use AWS Data Exports to create exports of the AWS Cost and Usage Report (CUR) 2.0. This is the new and recommended way to receive your detailed cost and usage data from AWS. It provides daily or hourly usage granularity, rates, costs, and usage attributes for all chargeable AWS services (the same information as CUR), along with some improvements. All possible dimensions are in the CUR such as tagging, location, resource attributes, and account IDs.
There are three export types based on the type of export you want to create: a standard data export, an export to a cost and usage dashboard with Amazon QuickSight integration, or a legacy data export.
-
Standard data export: A customized export of a table that delivers to Amazon S3 on a recurring basis.
-
Cost and usage dashboard: An export and integration to Amazon QuickSight to deploy a pre-built cost and usage dashboard.
-
Legacy data export: An export of the legacy AWS Cost and Usage Report (CUR).
You can create data exports with the following customizations:
-
Include resource IDs
-
Split cost allocation data
-
Hourly granularity
-
Versioning
-
Compression type and file format
For your workloads that run containers on Amazon ECS or Amazon EKS, enable split cost allocation data so that you can allocate your container costs to individual business units and teams, based on how your container workloads consume shared compute and memory resources. Split cost allocation data introduces cost and usage data for new container-level resources to AWS Cost and Usage Report. Split cost allocation data is calculated by computing the cost of individual ECS services and tasks running on the cluster.
A cost and usage dashboard exports the cost and usage dashboard table to an S3 bucket on a recurring basis and deploys a prebuilt cost and usage dashboard to Amazon QuickSight. Use this option if you want to quickly deploy a dashboard of your cost and usage data without the ability for customization.
If desired, you can still export CUR in legacy mode, where you can integrate other processing services such as AWS Glue
Implementation steps
-
Create data exports: Create customized exports with the data you want and control the schema of your exports. Create billing and cost management data exports using basic SQL, and visualize your billing and cost management data by integrating with Amazon QuickSight. You can also export your data in standard mode to analyze your data with other processing tools like Amazon Athena.
-
Configure the cost and usage report: Using the billing console, configure at least one cost and usage report. Configure a report with hourly granularity that includes all identifiers and resource IDs. You can also create other reports with different granularities to provide higher-level summary information.
-
Configure hourly granularity in Cost Explorer: To access cost and usage data with hourly granularity for the past 14 days, consider enabling hourly and resource level data in the billing console.
-
Configure application logging: Verify that your application logs each business outcome that it delivers so it can be tracked and measured. Ensure that the granularity of this data is at least hourly so it matches with the cost and usage data. For more details on logging and monitoring, seeĀ Well-Architected Operational Excellence Pillar.
Resources
Related documents:
Related examples: