Header background

Explore and analyze Amazon CloudWatch Synthetics data in Dynatrace

By integrating Amazon CloudWatch Synthetics data into Dynatrace, you can monitor both your Dynatrace synthetic monitors and CloudWatch canaries directly from within Dynatrace.

Dynatrace is an AWS Partner Network (APN) Advanced Technology Partner that provides software intelligence for simplifying cloud complexity and accelerating digital transformation. This blog post was co-authored with Shashiraj Jeripotula, Sr. Partner Solutions Architect at AWS and will also be published via the AWS Partner Network (APN) Blog.

Dynatrace offers powerful and fully integrated synthetic monitoring capabilities to manage service level agreements (SLAs) of your web applications and APIs. With just a view clicks you can record and playback clickpaths of your most critical application paths or leverage HTTP monitors to monitor internal as wells external API endpoints. Dynatrace automatically detects and connects monitored services and web applications, considers synthetic data in AI-powered answers by Davis®, and even lets you drill down from a synthetic transaction to code-level if necessary.

Amazon just recently released Amazon CloudWatch Synthetics, a new feature that monitors RESTful APIs, URLs, and website content endpoints via synthetic traffic (canaries) every minute, 24×7, and it alerts when application endpoints don’t behave as expected.

We are proud to announce that if you want to integrate CloudWatch Synthetics into Dynatrace, we have you covered. By integrating Amazon CloudWatch Synthetics data into Dynatrace, you can monitor both your Dynatrace synthetic monitors and CloudWatch canaries directly from within Dynatrace. This blog post explains how to do this.

Easily integrate Amazon CloudWatch Synthetics data into Dynatrace

With the help of the Dynatrace Third-Party Synthetic API, it’s easy to integrate Amazon CloudWatch Synthetics data into Dynatrace. While this removes the pain of switching back and forth between the AWS Management Console and Dynatrace, it also brings additional value—read on to learn more.

Dynatrace users can monitor and explore Amazon CloudWatch Synthetics data directly within Dynatrace

Integrating existing Amazon CloudWatch Synthetics canaries with Dynatrace provides several benefits in addition to those that are already offered by our fully integrated Dynatrace Synthetic Monitoring capabilities

To begin with, ingested Amazon CloudWatch Synthetics data behaves just like all other synthetic solutions in Dynatrace. It shows up in the same list of synthetic monitors as other solutions (select Synthetic from the Dynatrace navigation menu to view all synthetic monitors). This means that you can monitor and explore Amazon CloudWatch Synthetics data directly within Dynatrace.

You can also chart metrics, visualize them via dashboards, and even create custom alerts and reports based on those metrics. Finally, you can cover more advanced use cases, like the broken link checker offered by Amazon CloudWatch Synthetics.

AWS users can use the Davis AI engine to automatically analyze Amazon CloudWatch Synthetics data

Until now, you had to sign in to the AWS Management Console to work with Amazon CloudWatch Synthetics.

With the ability to embed CloudWatch Synthetics data in Dynatrace, you can now do more with your synthetic results. For example, you can incorporate them into AI-powered root cause detection with the Dynatrace Davis AI causation engine. In this way, when a problem is detected by Dynatrace, Davis will automatically include Amazon CloudWatch Synthetics data in its analysis. 

Solution Overview

Amazon CloudWatch Synthetics enables you to create canaries to monitor your endpoints and APIs. Canaries are configurable scripts that follow the same routes and perform the same actions that typical users do. This enables an outside-in view of your customers’ experiences and the availability of your services from their point of view. The image below models how canaries monitor endpoints and simultaneously send results to Dynatrace.

Canaries monitor endpoints and simultaneously send results to Dynatrace

How to set up Amazon CloudWatch Synthetics integration

Prerequisites

Ensure that you have access to:

Configure Dynatrace

You’ll need to sign in to your Dynatrace environment and generate an API token.

  1. Go to Settings > Integration > choose Dynatrace API.
  2. Select Generate token and enter a name for your new token (for example, Amazon CloudWatch Synthetic integration).
  3. Select the Create and read synthetic monitors, locations, and nodes access scope and then select Generate. You’ll find additional details about generating API tokens in
    Dynatrace Help.Creating an API token for Synthetic Monitoring

Then, to begin importing the CloudWatch Synthetics data

  1. From the Dynatrace navigation menu, select Synthetic.
  2. Select Create a synthetic monitor and then select the Explore the options link.
  3. Under Import synthetic data from, select Amazon CloudWatch.
    Importing Synthetic data from Amazon CloudWatch

Configure Amazon CloudWatch Synthetics

  1. Log in to the AWS Management Console and navigate to Amazon CloudWatch.
  2. From the CloudWatch menu, select Synthetics > Canaries.
  3. Create a new canary or edit an existing one.
    • To create a new canary, go to the Dynatrace GitHub repository and follow the instructions in the README.md file.
    • If you prefer to edit one of the existing canaries in the Synthetics window, be sure to add the Dynatrace exporter (dynatrace-canary-exporter.js) to the end of the script.
  4. Make sure to adapt the following variables to match your Dynatrace environment:
    • dynatraceUrl, for example, dynatraceUrl = soddgwvydy.live.dynatrace.com, where soddgwvydy must be replaced with your Dynatrace environment ID
    • dynatraceApiToken—use the API token generated in Configure Dynatrace above.

Working with canary data in Dynatrace

Navigate to the synthetic monitor list in Dynatrace (select Synthetic from the navigation menu); you’ll see the canaries show up in Dynatrace as soon as they’re executed. Amazon CloudWatch canaries are listed with all other synthetic monitors in Dynatrace.

Amazon CloudWatch Synthetics canary displayed in Dynatrace

Amazon CloudWatch canaries behave like any other Dynatrace synthetic monitor. This means that you can view details and connect web applications to see Real User Monitoring (RUM) data next to synthetic data (and vice versa).

You can also define alerts. Alerts are automatically picked up by the Davis AI causation engine and correlated to other problems detected in your Dynatrace environment.

You can group canaries into a single entity in Dynatrace, even if they’re executed in different AWS regions.

Group canaries into one entity

You can display the Amazon CloudWatch Synthetics canaries in Dynatrace charts and add them to your dashboards.

Charting Amazon CloudWatch Synthetics

Troubleshooting

If canary data doesn’t show up in Dynatrace, make sure that the Dynatrace host and API token parameters in the canary are correct. Then check the canary log for potential error messages (for example, a canary with an invalid Dynatrace API token).

Canary log

Summary

Amazon CloudWatch Synthetics makes it easier to monitor endpoints for RESTful APIs, URLs, and website content. They monitor your customer experience even when there is no customer traffic on your applications.

Integrating Amazon CloudWatch Synthetics into Dynatrace allows you to monitor both your Dynatrace and CloudWatch canaries directly from within your Dynatrace account. To learn more about the Amazon CloudWatch Synthetics service, check out the Amazon CloudWatch Synthetics home page. If you have any questions, please post them in the Amazon CloudWatch service forum.

You can learn more about monitoring AWS with Dynatrace or sign up for a free Dynatrace trial.