
Amazon CloudWatch dashboards are customizable home pages in the CloudWatch console. They allow you to monitor your resources in a single view, even across different AWS Regions. Metric data is retained for 15 months, enabling you to analyze both real-time and historical data.
How to identify?
You can check the alarms using the DescribeAlarms API call.
aws cloudwatch describe-alarms --alarm-names "myalarm"
aws cloudwatch describe-alarms --state INSUFFICIENT_DATA
Use AWS Config Managed rule “cloudwatch-alarm-action-check” to check that the Alarms have at least one alarm action.
How to fix?
Reducing Dashboard Costs
Charges apply when you exceed three dashboards (with up to 50 metrics each).
Free Tier: Up to 3 dashboards for up to 50 metrics per month (API calls via the console do not count against the Free Tier; SDK or CLI calls do).
Delete unnecessary dashboards to stay within the Free Tier limits.
Optimizing Alarms
Check for unused alarms: Alarms may remain even after the associated resource is deleted. A good indicator is an alarm in the INSUFFICIENT_DATA state.
Ensure alarms have at least one alarm action using AWS Config.
Enable high-resolution alarms only for mission-critical use cases.
Alarm Types
Metric Alarm: Monitors a single metric.
Composite Alarm: Uses a rule expression to evaluate the state of multiple alarms (states: OK, ALARM, INSUFFICIENT_DATA).
Use the DescribeAlarms API call to check alarm status and take action as needed.