AWS Billing and Cost Management
Overview
AWS Billing and Cost Management allows you to track your AWS infrastructure billing forecasts and costs, including CloudWatch usage.
Enable this integration to see billing metrics in Datadog.
Setup
Installation
If you haven’t already, set up the Amazon Web Services integration
first.
Metrics collection
In the AWS integration page
, ensure that Billing
is enabled under the Metric Collection
tab.
Add the following permission to your Datadog IAM policy
to collect AWS billing metrics. For more information, see the AWS Budgets policies
on the AWS website.
AWS Permission | Description |
---|
budgets:ViewBudget | Used to view AWS budgets metrics |
Enable Billing metrics within the AWS Console
.
Install the Datadog - AWS Billing and Cost Management integration
.
Create an AWS budget
to start receiving metrics
.
Note: AWS Budgets metrics can only be collected from your AWS primary account.
Log collection
Enable logging
Configure AWS billing to send logs either to a S3 bucket or to CloudWatch.
Note: If you log to a S3 bucket, make sure that amazon_billing
is set as Target prefix.
Send logs to Datadog
If you haven’t already, set up the Datadog Forwarder Lambda function
.
Once the Lambda function is installed, manually add a trigger on the S3 bucket or CloudWatch log group that contains your AWS billing logs in the AWS console:
Monitoring CloudWatch usage
After setting up your AWS permissions to add the budgets:ViewBudget
permission, you can monitor CloudWatch billing with this integration.
AWS billing metrics are available about once every 4 hours. You may have to wait 4 hours for Datadog to collect the metrics.
Once the metrics are available, look at aws.billing.estimated_charges
and aws.billing.forecasted_charges
. You can use these metrics to track your CloudWatch usage by filtering the context down to service:amazoncloudwatch
. You can break down the spend to each AWS account using max:account_id
.
The metric aws.billing.estimated_charges
is what AWS believes to be the CloudWatch bill so far for the current month. This value is reset to 0 at the start of each month. The metric aws.billing.forecasted_charges
is your estimated CloudWatch bill for the end of the month based on current usage.
Data Collected
Metrics
aws.billing.actual_spend (gauge) | The actual spending costs for your budget period Shown as dollar |
aws.billing.budget_limit (gauge) | The spending limit for your budget period Shown as dollar |
aws.billing.estimated_charges (gauge) | The estimated charges for your AWS usage. This can either be estimated charges for one service or a roll-up of estimated charges for all services. Shown as dollar |
aws.billing.forecasted_spend (gauge) | The forecasted spending costs for your budget period Shown as dollar |
Each of the metrics retrieved from AWS is assigned the same tags that appear in the AWS console, including but not limited to host name, security-groups, and more.
Events
The AWS Billing and Cost Management integration does not include any events.
Service Checks
The AWS Billing and Cost Management integration does not include any service checks.
Troubleshooting
No metrics are reporting from the AWS billing integration
Here is a check list that you can apply to troubleshoot your integration:
- Ensure your IAM policy has
budgets:ViewBudget
. - Ensure billing metrics are enabled in your payer account.
Note: AWS Billing metrics are collected every 4 or 8 hours by Datadog.
Missing metrics
If you are missing aws.billing.actual_spend
, aws.billing.forecasted_spend
, or aws.billing.budget_limit
, create an AWS budget
to start receiving the metrics in Datadog.
If you are missing aws.billing.estimated_charges
, ensure that the AWS account in question is your primary account. This metric cannot be pulled from accounts that are not the primary AWS billing account, as noted above.
Note: AWS Billing metrics are collected every 4 or 8 hours by Datadog.