> ## Documentation Index
> Fetch the complete documentation index at: https://notes.kodekloud.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Demo CloudWatch Dashboards and Widgets

> Guide showing how to create an AWS CloudWatch dashboard and add widgets to visualize EC2 metrics like CPU, network, and disk for centralized monitoring and troubleshooting

In this guide you'll learn how to create an AWS CloudWatch dashboard and add widgets so you can visualize key metrics for your applications and infrastructure in a single, centralized view. CloudWatch collects metrics and logs; dashboards let you organize those data points into charts, gauges, and numeric displays that simplify monitoring and troubleshooting.

Prerequisite: an EC2 instance running in the region you intend to monitor. This demo uses an instance in US East (Ohio).

![A screenshot of the AWS EC2 Instances console showing one running instance named "MyEC2Instance" (i-0379033f0e273ad10), type t3.micro, with 3/3 status checks passed in us-east-2a. The top toolbar shows buttons like Connect, Instance state, Actions and Launch instances.](https://mintcdn.com/kodekloud-c4ac6d9a/FoKJ_KwuI1oFSFo9/images/AWS-Certified-DevOps-Engineer-Professional/Domain-4-Monitoring-and-Logging/Demo-CloudWatch-Dashboards-and-Widgets/aws-ec2-myec2instance-t3micro-running.jpg?fit=max\&auto=format\&n=FoKJ_KwuI1oFSFo9\&q=85\&s=8a388f56ebc4aac232d981a377dc5352)

Step-by-step: create a dashboard and add widgets

1. Open the CloudWatch console
   * In the AWS Console search bar type "CloudWatch" and select it.
   * In the CloudWatch navigation pane choose Dashboards.

2. Create a new dashboard
   * Click Create dashboard.
   * Enter a name for the dashboard, for example `DevOps-Monitoring`, then click Create dashboard.

![A screenshot of the AWS CloudWatch "Create new dashboard" dialog with the Dashboard name field filled as "DevOps-Monitoring", a Tags section, and a "Create dashboard" button. The AWS console and browser tabs are visible in the background.](https://mintcdn.com/kodekloud-c4ac6d9a/FoKJ_KwuI1oFSFo9/images/AWS-Certified-DevOps-Engineer-Professional/Domain-4-Monitoring-and-Logging/Demo-CloudWatch-Dashboards-and-Widgets/aws-cloudwatch-create-dashboard-dialog.jpg?fit=max\&auto=format\&n=FoKJ_KwuI1oFSFo9\&q=85\&s=5ff04f96dbfeb655a046544c3dd8c5e8)

3. Add the first widget (CPU utilization — line chart)
   * If prompted after creating the dashboard, choose to add a widget; otherwise open the dashboard and click Add widget.
   * Data source: Metrics.
   * Experience: Metrics console.
   * Widget type: Line (or choose another chart type as needed). Click Next.
   * Label: give the widget a descriptive label such as `CPU`.
   * Confirm the region matches your EC2 instance region (US East (Ohio) in this demo).
   * Navigate to EC2 -> Per-Instance Metrics. Use the search box to filter by your EC2 instance ID.
   * Select `CPUUtilization` and click Create widget.

You should now see a CPU utilization chart on the `DevOps-Monitoring` dashboard showing metric values and timestamps.

![A screenshot of an AWS CloudWatch "DevOps-Monitoring" dashboard. The CPU utilization chart is visible with a tooltip showing a timestamp (2026-09-27 08:35:00 UTC) and a value of about 0.144%.](https://mintcdn.com/kodekloud-c4ac6d9a/FoKJ_KwuI1oFSFo9/images/AWS-Certified-DevOps-Engineer-Professional/Domain-4-Monitoring-and-Logging/Demo-CloudWatch-Dashboards-and-Widgets/aws-cloudwatch-devops-monitoring-cpu-tooltip.jpg?fit=max\&auto=format\&n=FoKJ_KwuI1oFSFo9\&q=85\&s=e7cee715b34166c81c1a05b8d4cd94b0)

4. Add additional metrics to the dashboard
   * Click the plus (+) icon and choose Add widget.
   * Repeat: Data source -> Metrics -> Metrics console -> EC2 -> Per-Instance Metrics -> search by your instance ID.
   * Example: select `NetworkIn` and add it as a line widget to visualize incoming network bytes over time, then Create widget.

Repeat this process to add other relevant metrics such as `NetworkOut`, `DiskReadBytes`, or custom application metrics. Each widget’s X-axis represents time; the Y-axis shows the metric value.

5. Add a numeric (quick-value) widget
   * Click Add widget -> Number -> Next.
   * Choose Metrics console and select the EC2 Per-Instance metric `CPUUtilization` (or another metric that yields a single value).
   * Create the widget. The Number widget displays an immediate, human-readable value (e.g., CPU %), useful for quick health checks.

After adding charts and number widgets you’ll have a compact, at-a-glance dashboard that highlights the most important metrics for the instance.

![A screenshot of the AWS CloudWatch "DevOps-Monitoring" dashboard displaying metric panels (CPU, NetworkIn) with small line charts and a CPU utilization value of about 0.19%.](https://mintcdn.com/kodekloud-c4ac6d9a/FoKJ_KwuI1oFSFo9/images/AWS-Certified-DevOps-Engineer-Professional/Domain-4-Monitoring-and-Logging/Demo-CloudWatch-Dashboards-and-Widgets/cloudwatch-devops-monitoring-cpu-networkin.jpg?fit=max\&auto=format\&n=FoKJ_KwuI1oFSFo9\&q=85\&s=5716c18f466fa609813823d924b96344)

6. Save the dashboard
   * When you’re done arranging widgets, click Save to persist the dashboard layout and widgets.

Recommended widget types (quick reference)

| Widget Type | Best for | Example |
| - | - | - |
| Line/Area/Bar | Trends over time | `CPUUtilization`, `NetworkIn` |
| Number | Instant single-value checks | Current CPU % or active connections |
| Gauge | Threshold visualization | Memory usage vs. max capacity |
| Text/Markdown | Context, runbooks, or links | `Operational notes` or links to dashboards |
| Query/results | Aggregated logs/insights | CloudWatch Logs Insights query results |

Best practices and quick summary

Tip: Ensure the CloudWatch region you select matches the AWS region where your resources (`EC2`, `RDS`, etc.) run. Some dashboard features can show cross-region metrics, but filtering by the correct region simplifies selecting per-resource metrics and avoids confusion.

* CloudWatch = AWS monitoring service for metrics and logs.
* Metrics = measurements like `CPUUtilization`, `NetworkIn`, `DiskReadBytes`.
* Dashboards = customizable visual layouts that aggregate metrics into widgets.
* Widgets = individual displays (line charts, number widgets, gauges, etc.) for specific metrics.

In production, design dashboards around applications or environments (multiple instances, load balancers, databases). Focus dashboards on actionable metrics, use concise labels, and choose widget types that make it easy to interpret the current state at a glance.

Further reading and references

* AWS CloudWatch documentation: [https://docs.aws.amazon.com/cloudwatch/](https://docs.aws.amazon.com/cloudwatch/)
* EC2 metrics overview: [https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/viewing\_metrics\_with\_cloudwatch.html](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/viewing_metrics_with_cloudwatch.html)

> **[Watch Video](https://learn.kodekloud.com/user/courses/aws-certified-devops-engineer-professional/module/15ed9473-60f4-466a-b7b2-3d9cb829e847/lesson/cf98ac30-b482-4424-ba1b-5b922492e21e)**


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.