Deploy the solution - Application Monitoring with Amazon CloudWatch

Deploy the solution

This solution uses AWS CloudFormation templates and stacks to automate its deployment. The CloudFormation template(s) to describes the AWS resources included in this solution and their properties. The CloudFormation stack provisions the resources that are described in the templates.

AWS CloudFormation templates

You can download the CloudFormation template for this solution before deploying it.


This solution includes an option to send anonymized operational metrics to AWS. We use this data to better understand how customers use this solution and related services and products. AWS owns the data gathered though this survey. Data collection is subject to the AWS Privacy Notice.

To opt out of this feature, download the template, modify the AWS CloudFormation mapping section, and then use the AWS CloudFormation console to upload your template and deploy the solution. For more information, refer to section Anonymized data collection of this guide.

Amazon CloudWatch Monitoring Framework view template button amazon-cloudwatch-monitoring-framework.template: Use this template to launch the solution and all associated components. The default configuration deploys infrastructure for currently supported Apache, NGINX and Puma workload, and a demo web server running on an EC2 instance for each workload. The demo instance is pre-configured with the necessary CloudWatch agent and web server configurations.

workload template button workload.template: Use this template if you want to deploy infrastructure for your workload without using the framework template. Review the following parameters if you are deploying this template independently.

Parameter Default Description
Workload Name none

Workload that you want to monitor. Supported workload names are Apache, Nginx, Puma.


Workload names are case sensitive.

Tag Schema none

Tagging schema to identity workload instances.


Tags are key sensitive.

Dashboard Name none Name for the deployed CloudWatch Dashboard. Region will be appended to the name. For example: ApacheDashboard-us-east-1
Access Log Group none CloudWatch Log Group where instances push their access logs.
SSM Parameter Name none AWS Systems Manager parameter used for maintaining workload instance list.

apache-demo.template: Use this template to deploy demo Apache web server running on EC2 instance which is preconfigured with needed CloudWatch agent and httpd configurations.

nginx-demo.template: Use this template to deploy a demo NGINX web server running on EC2 instance, which is preconfigured with a CloudWatch agent and dependency configurations.

puma-demo.template: Use this template to deploy demo Puma web server running on an EC2 instance, which is preconfigured with a CloudWatch agent and dependency configurations.


As of September 2022, the amazon-cloudwatch-monitoring-framework.template only supports Apache, NGINX, and Puma workloads and it deploys workload.template as nested stacks. Optionally, you can deploy workload.template as standalone templates as well.

AWS CloudFormation resources are created from AWS Cloud Development Kit (AWS CDK) constructs.


Before you launch this solution, review the configuration section and consider the CloudWatch agent and web server configuration files discussed in the Solution Components section of this guide. Follow the step-by-step instructions in this section to configure and deploy this solution into your account.


This solution does not configure your EC2 instances. Amazon CloudWatch agent and required configuration files are provided with the solution so that you can refer to them when configuring EC2 instances for your respective workload. For more information, refer to Configuring your Apache EC2 instance, Configuring your Puma EC2 instance, or Configuring your NGINX instance. Additionally, a demo template is provided for you to use for demo and proof of concept purposes.

Deployment process overview

Time to deploy: Approximately five minutes

Use the following steps to deploy this solution on AWS. For detailed instructions, follow the links for each step.

Step 1. Launch the stack

  • Launch the AWS CloudFormation template for the framework into your AWS account.

  • Enter values for required parameters: Tagging Schema and Demo Instance.

  • Review the template parameters, and adjust if necessary.

Step 2. Tag the demo instance

Step 3. Onboard your workload EC2 instances (Optional)