Dash0 Logo
Infrastructure MonitoringLog ManagementApplication Performance ManagementDistributed TracingKubernetes MonitoringDashboardsAlertingService MapIntegrationsTransparent CostObservability as Code
PricingDocs
GuidesBlogKnowledgePodcastIntegrationsChangelog
Contact usMeet our TeamCareersSecurity
  • Book A Demo
  • Sign In
  • Start Free Trial
Book a demoSign in
Start Free Trial

Resources

  • Pricing
  • Blog
  • Knowledge
  • Integrations
  • Documentation
  • Glossary
  • OTelBin.io
  • Sitemap

Company

  • Our Team
  • Careers
  • Security

Contact

  • Contact us
  • GitHub
  • LinkedIn
  • X
  • YouTube
  • Dash0 Newsletter
Subscribe to our newsletter

Receive updates on OTelBin, Dash0, Observability, OpenTelemetry, and more.

  • Terms and Conditions
  • Privacy Policy
  • Data Processing Agreement
  • Vulnerability Disclosure

©2025 Dash0 Inc.

Hub/AWS CloudWatch Metrics

Technology

AWS CloudWatch Metrics

Dash0 integrates AWS CloudWatch Metrics via Amazon Firehose, providing real-time visibility into your AWS environments.

Overview

Overview

AWS CloudWatch Metrics provide real-time insights into the performance and health of AWS resources and applications such as EC2, Lambda, API Gateway, and more. For better usability and control, you can send these metrics to Dash0 via Firehose stream.

Use Cases

  • Send CloudWatch metrics to Dash0 via Firehose stream.

Setup

Overview

You can create a CloudWatch metric stream and direct it to an Amazon Data Firehose delivery stream. Firehose can then deliver the metrics to Dash0 through an HTTP endpoint. This guide will teach you how.

Create a Firehose delivery stream

Follow AWS documentation to create a Firehose delivery stream from AWS console:

1. Choose source and destination

Choose "Direct PUT" as the source and "HTTP Endpoint" as the destination of your Firehose stream.

Choose source and destination

2. Firehose stream name

Give your Firehose stream a name.

3. Destination settings

In HTTP Endpoint URL, enter AWS CloudWatch Metrics (JSON) via Firehose HTTP endpoint, which can be found in your Dash0 organization settings under Endpoints:

Create a Dash0 authentication token for the Firehose stream. By default, data will be sent to the default dataset. If you want to send the data to another dataset, you can restrict the token access to that specific dataset. It's also recommended to grant only the ingestion permission to this token.

In the authentication section, you can either choose "Use access key" option and enter the authentication token directly as the Access Key:

or use AWS Secrets Manager to retrieve the token programmatically.

You can keep the rest of the settings as default. Optionally, you can enable GZIP encoding to compress the data.

4. Backup settings

Create or choose an existing S3 bucket to store data in case of delivery failures.

Create a CloudWatch metric stream to send metrics to Firehose

Follow AWS documentation to create a CloudWatch metric stream that sends selected metrics in JSON to your Firehose delivery stream previously created.

1. Choose destination

Choose Custom setup with Firehose and select the Amazon Data Firehose stream created in the previous step.

2. Change output format

Choose JSON as the output format.

Change output format

CloudWatch supports exporting metrics in both JSON and OpenTelemetry 1.0 format. We have tested sending metrics in both formats to Dash0 and found that metrics exported in JSON format have more structured resource attributes that are easier to query. Therefore, we require using the JSON format. Choosing OpenTelemetry 1.0 format will lead to delivery failure in Firehose stream.

3. Select metrics to be streamed

Select the metrics you want to stream to Dash0.

4. Custom metric stream name

Give your CloudWatch metric stream a unique name.

Explore metrics in Dash0

Once everything is set up, you can find CloudWatch metrics in Dash0 Metrics Explorer by filtering with aws.cloudwatch.metric_stream_name or with your cloud.account.id.

You will see metrics grouped under aws metric namespace. The metric names have been normalized according to OpenTelemetry naming conventions. For example, CPUUtilization of EC2 instances becomes aws.ec2.cpu_utilization.

Explore metrics in Dash0

Dashboards

AWS EC2

AWS EC2 instance metrics.

[aws]
[cloudwatch]
[ec2]
EC2 instance metrics.

AWS RDS

AWS RDS metrics.

[aws]
[cloudwatch]
[rds]
AWS RDS metrics.

Related Integrations

AWS