

# Managing alarms


When you run a resiliency assessment, as a part of operational recommendations, AWS Resilience Hub recommends setting up Amazon CloudWatch alarms to monitor your application resiliency. We recommend these alarms based on the resources and components of your current application configuration. If the resources and components in your application change, you should run a resiliency assessment to ensure you have the correct Amazon CloudWatch alarms for your updated application.

Additionally, AWS Resilience Hub now automatically detects and integrates any already configured Amazon CloudWatch alarms into its resilience assessments, providing a more comprehensive view of your application's resilience posture. This new capability combines AWS Resilience Hub recommendations with your current monitoring setup, streamlining alarm management and enhancing assessment accuracy. If you have implemented an Amazon CloudWatch alarm and AWS Resilience Hub doesn't automatically detect it, you can exclude the alarm and select the reason as **Already implemented**. For more information about excluding recommendation, see [Including or excluding operational recommendations](exclude-recommend.md).

AWS Resilience Hub provides a template file (`README.md`) that allows you to create alarms recommended by AWS Resilience Hub within AWS (such as Amazon CloudWatch) or outside AWS. The default values provided in the alarms are based on the best practices that are used for creating these alarms.

**Topics**
+ [

# Creating alarms from the operational recommendations
](create-alarm.md)
+ [

# Viewing alarms
](view-alarm.md)

# Creating alarms from the operational recommendations


AWS Resilience Hub creates an CloudFormation template that contains details to create the selected alarms in Amazon CloudWatch. After the template is generated, you can access it through an Amazon S3 URL, download the same and place it in your code pipeline or create a stack through the CloudFormation console.

To create an alarm based on AWS Resilience Hub recommendations, you must create an CloudFormation template for the recommended alarms and include them in your code base.

**To create alarms in operational recommendations**

1. In the left navigation menu, choose **Applications**.

1. In **Applications**, choose your application.

1. Choose **Assessments** tab. 

   In **Resiliency assessments** table, you can identify your assessments using the following information:
   + **Name** – Name of the assessment you had provided at the time of creation.
   + **Status** – Indicates the execution state of the assessment.
   + **Compliance status** – Indicates if the assessment is compliant with the resiliency policy.
   + **Resiliency drift status** – Indicates if your application has drifted or not from the previous successful assessment.
   + **App version** – Version of your application.
   + **Invoker** – Indicates the role that invoked the assessment.
   + **Start time** – Indicates the start time of the assessment.
   + **End time** – Indicates the end time of the assessment.
   + **ARN** – The Amazon Resource Name (ARN) of the assessment.

1. Select an assessment from the **Resiliency assessments** table. If you don't have an assessment, complete the procedure in [Running resiliency assessments in AWS Resilience Hub](run-assessment.md) and then return to this step. 

1. Choose **Operational recommendations**.

1. If not selected by default, choose **Alarms** tab.

   In **Alarms** table, you can identify the recommended alarms using the following:
   + **Name** – Name of the alarm that you have set for your application.
   + **Description** – Describes the objective of the alarm.
   + **State** – Indicates the current implementation state of the Amazon CloudWatch alarms. 

     This column displays one of the following values:
     + **Implemented** – Indicates that the alarms recommended by AWS Resilience Hub are implemented in your application. Choosing the number below will filter the **Alarms** table to display all the recommended alarms that are implemented in your application.
     + **Not implemented** – Indicates that the alarms recommended by AWS Resilience Hub are included but not implemented in your application. Choosing the number below will filter the **Alarms** table to display all the recommended alarms that are not implemented in your application.
     + **Excluded** – Indicates that the alarms recommended by AWS Resilience Hub are excluded from your application. Choosing the number below will filter the **Alarms** table to display all the recommended alarms that are excluded from your application. For more information about including and excluding recommended alarms, see [Including or excluding operational recommendations](https://docs.aws.amazon.com/resilience-hub/latest/userguide/exclude-recommend.html?icmpid=docs_resiliencehub_help_panel_operational_recommendations_alarms).
     + **Inactive** – Indicates that the alarms are deployed to Amazon CloudWatch, but the status is set to **INSUFFICIENT\$1DATA** in Amazon CloudWatch. Choosing the number below will filter the **Alarms** table to display all the implemented and inactive alarms.
   + **Configuration** – Indicates if there are any pending configuration dependencies that needs to be addressed.
   + **Type** – Indicates the type of alarm.
   + **AppComponent** – Indicates the Application Components (AppComponents) that are associated with this alarm.
   + **Reference ID** – Indicates the logical identifier of the AWS CloudFormation stack event in AWS CloudFormation.
   + **Recommendation ID** – Indicates the logical identifier of the AWS CloudFormation stack resource in AWS CloudFormation.

1. In **Alarms** tab, to filter the alarm recommendations in **Alarms** table based on a specific state, select a number below the same.

1. Select the recommended alarms that you want to set up for your application, and choose **Create CloudFormation template**.

1. In **Create CloudFormation template** dialog, you can use the auto-generated name, or you can enter a name for CloudFormation template in the **CloudFormation template name** box.

1. Choose **Create**. This can take up to a few minutes to create the AWS CloudFormation template.

   Complete the following procedure to include the recommendations in your code base.

**To include the AWS Resilience Hub recommendations your code base**

1. Choose **Templates** tab to view the template you just created. You can identify your templates using the following:
   + **Name** – Name of the assessment you had provided at the time of creation.
   + **Status** – Indicates the execution state of the assessment.
   + **Type** – Indicates the type of operational recommendation.
   + **Format** – Indicates the format (JSON/ text) in which the template is created.
   + **Start time** – Indicates the start time of the assessment.
   + **End time** – Indicates the end time of the assessment.
   + **ARN** – The ARN of the template

1. Under **Template details**, choose the link below **Templates S3 Path** to open the template object in Amazon S3 console.

1. In Amazon S3 console, from **Objects** table, choose the Alarms folder link.

1. To copy the Amazon S3 path, select the check box in front of the JSON file and choose **Copy URL**.

1. Create an AWS CloudFormation stack from AWS CloudFormation console. For more information about creating an AWS CloudFormation stack, see [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-console-create-stack.html](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-console-create-stack.html). 

   While creating the AWS CloudFormation stack, you must provide the Amazon S3 path that you copied from the previous step.

# Viewing alarms


You can view all the active alarms that you have set up to monitor the resiliency of your applications. AWS Resilience Hub uses CloudFormation template to store alarm details that is in-turn used for creating the alarms in Amazon CloudWatch. You can access the CloudFormation template using Amazon S3 URL, and can download and place it into your code pipeline or create a stack through the CloudFormation console.

To view alarms from the dashboard, choose **Dashboard** from the left navigation menu. In **Implemented alarms** table, you can identify the implemented alarms using the following information:
+ **Application impacted** – Name of the applications that have implemented this alarm.
+ **Active alarms** – Indicates the number of active alarms triggered from the applications.
+ **FIS in progress** – Indicates the AWS FIS experiment that is currently running for your application.

**To view the alarms implemented in your application**

1. In the left navigation menu, choose **Applications**.

1. Select an application from the **Applications** table.

1. In the application summary page, the **Implemented alarms** table displays all the recommended alarms that are implemented in your application.

   To find a specific alarm in the **Implemented alarms** table, in the **Find alarms by text, property, or value** box, select one of the following fields, choose an operation, and then type a value.
   + **Alarm name** – Name of the alarm that you have set for your application.
   + **Description** – Describes the objective of the alarm.
   + **State** – Indicates the current implementation state of the Amazon CloudWatch alarm. 

     This column displays one of the following values:
     + **Implemented** – Indicates that the alarms recommended by AWS Resilience Hub are implemented in your application. Choose the number below to view all the recommended and implemented alarms in **Operational recommendations** tab.
     + **Not implemented** – Indicates that the alarms recommended by AWS Resilience Hub are included but not implemented in your application. Choose the number below to view all the recommended and non-implemented alarms in **Operational recommendations** tab.
     + **Excluded** – Indicates that the alarms recommended by AWS Resilience Hub are excluded from your application. Choose the number below to view all the recommended and excluded alarms in **Operational recommendations** tab. For more information about including and excluding recommended alarms, see [Including or excluding operational recommendations](https://docs.aws.amazon.com/resilience-hub/latest/userguide/exclude-recommend.html?icmpid=docs_resiliencehub_help_panel_operational_recommendations_alarms).
     + **Inactive** – Indicates that the alarms are deployed to Amazon CloudWatch, but the status is set to **INSUFFICIENT\$1DATA** in Amazon CloudWatch. Choose the number below to view all the implemented and inactive alarms in **Operational recommendations** tab.
   + **Source template** – Provides the Amazon Resource Name (ARN) of the AWS CloudFormation stack that contains the alarm details.
   + **Resource** – Displays the resources that this alarm is attached to and was implemented for.
   + **Metric** – Displays the Amazon CloudWatch metric assigned for the alarm. For more information about Amazon CloudWatch metrics, see [Amazon CloudWatch Metrics](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_concepts.html#Metric).
   + **Last change** – Displays the date and time an alarm was last modified.

**To view the recommended alarms from assessments**

1. In the left navigation menu, choose **Applications**.

1. Select an application from the **Applications** table. 

   To find an application, enter the application name in the **Find applications** box.

1. Choose **Assessments** tab.

   In **Resiliency assessments** table, you can identify your assessments using the following information:
   + **Name** – Name of the assessment you had provided at the time of creation.
   + **Status** – Indicates the execution state of the assessment.
   + **Compliance status** – Indicates if the assessment is compliant with the resiliency policy.
   + **Resiliency drift status** – Indicates if your application has drifted or not from the previous successful assessment.
   + **App version** – Version of your application.
   + **Invoker** – Indicates the role that invoked the assessment.
   + **Start time** – Indicates the start time of the assessment.
   + **End time** – Indicates the end time of the assessment.
   + **ARN** – The Amazon Resource Name (ARN) of the assessment.

1. Select an assessment from the **Resiliency assessments** table.

1. Choose **Operational recommendations** tab.

1. If not selected by default, choose **Alarms** tab.

   In **Alarms** table, you can identify the recommended alarms using the following:
   + **Name** – Name of the alarm that you have set for your application.
   + **Description** – Describes the objective of the alarm.
   + **State** – Indicates the current implementation state of the Amazon CloudWatch alarms. 

     This column displays one of the following values:
     + **Implemented ** – Indicates that the alarm is implemented in your application. Choosing the number below will filter the **Alarms** table to display all the recommended alarms that are implemented in your application.
     + **Not implemented** – Indicates that the alarm is not implemented or included in your application. Choosing the number below will filter the **Alarms** table to display all the recommended alarms that are not implemented in your application.
     + **Excluded** – Indicates that the alarm is excluded from the application. Choosing the number below will filter the **Alarms** table to display all the recommended alarms that are excluded from your application. For more information about including and excluding recommended alarms, see [Including or excluding operational recommendations](exclude-recommend.md).
     + **Inactive** – Indicates that the alarms are deployed to Amazon CloudWatch, but the status is set to **INSUFFICIENT\$1DATA** in Amazon CloudWatch. Choosing the number below will filter the **Alarms** table to display all the implemented and inactive alarms.
   + **Configuration** – Indicates if there are any pending configuration dependencies that needs to be addressed.
   + **Type** – Indicates the type of alarm.
   + **AppComponent** – Indicates the Application Components (AppComponents) that are associated with this alarm.
   + **Reference ID** – Indicates the logical identifier of the AWS CloudFormation stack event in AWS CloudFormation.
   + **Recommendation ID** – Indicates the logical identifier of the AWS CloudFormation stack resource in AWS CloudFormation.