Alerts | MuleSoft Documentation
# Alerts
Private Cloud Edition  Runtime Fabric 
You can set up alerts to send email notifications when application or server events occur.
Runtime Manager includes several standard alert types that trigger notifications for common events such as:
  * An application exceeds a specific number of events processed within a specified period of time.
  * A deployment is complete, either successfully or not.
  * The worker monitoring system notifies CloudHub about a problem with a worker on an application.
  * A server is disconnected or deleted.


Runtime Manager retains thirty days of alert history. Alerts retrigger when the conditions exceed the specified threshold.  
---  
You can also create custom alerts for applications deployed to CloudHub and CloudHub 2.0.
Custom alerts in CloudHub are triggered when your application sends notifications to the Runtime Manager console using Anypoint Connector for CloudHub (CloudHub Connector). See Custom Application Alerts for information.
For applications deployed to CloudHub 2.0, custom alerts indicate whether an app was successfully deployed and whether it is behaving as expected. See Configuring Application Alerts for more information.
For CloudHub 2.0, Alerts apply to applications only, not servers.   
---  
## Rate Limits on Alerts
Anypoint Platform enforces rate limits that determine how often an alert is triggered and prevent excessive emails from being sent. At present, there is no defined limit to the number of Runtime Manager alerts.
## Create an Alert
To create an alert:
  1. In Runtime Manager, click **Alerts** in the left navigation pane.
     * If no alerts are set up, you see:
Figure 1. The arrow shows the **Create your first alert** option.
     * If your account already has associated alerts, you see:
Figure 2. The arrow shows the blue plus (**+**) icon on the **Alerts** page.
  2. Click the blue plus (**+**) icon to create an alert.
  3. Complete the required fields:
     * **Name**
Unique and meaningful name for the alert
The **Name** is limited to 40 characters.
     * **Severity level**
Severity of the alert: **Critical** , **Warning** , or **Info**
     * **Source**
The source of the alert: applications or servers
This field appears only if your Anypoint Platform account supports local servers.
     * **Application type**
When the source is **Applications** , applications deployed to either CloudHub or local servers. Runtime Fabric application alerts are supported only using Anypoint Monitoring.
You can’t create an alert that applies to both applications deployed to CloudHub and local servers. You must create separate alerts for each deployment type.
     * **Server type**
When the source is **Servers** , the type of server: single server, server group, or cluster.
If your servers aren’t available on your menu, see Servers, Server Groups, and Clusters.
     * **Applications** or **Servers**
The application or server to apply the alert to
     * **Condition**
The condition that triggers the alert
The available options depend on whether your alert is linked to a server, an application running on CloudHub, or an application running locally. Some conditions require additional data. See Alert Conditions.
     * **Subject**
The subject of the alert email to send when the alert is triggered
The subject can include variables. See Alert Variables.
     * **Message**
The body text for the email to send when the alert is triggered. The message body can include variables. See Alert Variables.
     * **Recipients**
The recipients of the alert email
You can select up to 20 platform user IDs and enter up to 20 email addresses.
  4. Click **Create Alert**.


When an event that meets an alert condition occurs, Runtime Manager sends an email similar to the following:
## Alert Conditions
You can select different conditions depending on the alert source. Some conditions are simple success or failure notifications, such as `Deployment success`. Some more complex conditions require that you define parameters that appear as new fields in the form.
### Conditions for Applications Deployed to CloudHub
For applications deployed to CloudHub, the following alert conditions apply: 

CPU usage - Cloudhub
    
The CPU usage of the CloudHub workers that run the application is above or below the percentage for the specified period of time.
To enable this condition, specify the percentage and duration that triggers the alert.
For CloudHub multiworker applications, the alert considers the CPU threshold of the entire application.   
--- 

Custom application alert
      
The custom notification contains the specified text.
To enable this condition, specify the notification text from the CloudHub Connector in your Mule application. When the text in one of the notifications matches the specified string, an alert is sent. See Custom Application Alerts for more information. 

Exceeds event traffic threshold
    
The number of events of any type exceeds the threshold for the specified period of time.
To enable this condition, specify the capacity threshold and duration that triggers the alert. This alert condition depends on the events you are tracking in your application. For information, see Business Events. 

Memory usage - Cloudhub
    
Memory usage is a percentage that represents the JVM heap-used/JVM total memory. The alert triggers if the memory usage is above or below the limit for the specified period of time.
To enable this condition, specify the percentage and duration that triggers the alert.
The following alerts for applications deployed to CloudHub require no additional parameters:
  * Deployment failed
  * Deployment success
  * Secure data gateway connected
  * Secure data gateway disconnected
  * Worker not responding


### Conditions for Applications Deployed to Local Servers
For applications deployed to local servers, the following alert conditions apply: 

Number of errors
    
The number of messaging errors reported by Mule runtime server in one minute reaches the specified limit. The number of errors reported depends on error handling configuration in the app. For information about Mule errors, see Mule Errors.
To enable this condition, specify the number of errors per minute that triggers the alert. 

Number of Mule messages
    
The number of Mule messages since the application started reaches the specified limit.
To enable this condition, specify the number of Mule messages that triggers the alert. 

Response time
    
The response time reaches the specified limit.
To enable this condition, specify the maximum response time that triggers the alert.
The following alerts for applications deployed to local servers require no additional parameters:
  * Application undeployed
  * Deployment failure
  * Deployment success


### Conditions for Local Servers
The available alert events depend on the server type. The following alerts are available for all target types (servers and nodes in server groups and clusters): 

Server CPU usage
    
The CPU usage of the servers that run the application is above or below the percentage for the specified period of time.
To enable this condition, specify the CPU percentage and duration that triggers the alert. 

Server Load average
    
The average processing load of the server is above or below the amount for the specified period of time.
To enable this condition, specify the average load and duration that triggers the alert.
Windows environments don’t provide this information, so this metric isn’t available in Windows environments.   
--- 

Server Memory usage
      
The total memory usage (in MB) on the server is above or below the amount for the specified period of time.
To enable this condition, specify the memory usage and duration that triggers the alert. 

Server Thread count
    
The thread count on the JVM is above or below the level for the specified period of time.
To enable this condition, specify the thread count and duration that triggers the alert.
The following alerts vary according to the target type (server, server groups, or clusters) and require no additional parameters: 

Servers
    
  * **Agent version changed**
  * **Runtime version changed**
  * **Server connected**
  * **Server deleted**
  * **Server disconnected**



Server Groups
    
  * **Server Group connected**
  * **Server Group deleted**
  * **Server Group disconnected**
  * **Server Group’s node connected**
  * **Server Group’s node disconnected**
  * **Server added to Server Group**
  * **Server removed from Server Group**



Clusters
    
  * **Cluster connected**
  * **Cluster deleted**
  * **Cluster disconnected**
  * **Cluster presents visibility issues**
  * **Cluster’s node connected**
  * **Cluster’s node disconnected**
  * **Server added to Cluster**
  * **Server removed from Cluster**
Server Memory usage
      
The total memory usage (in MB) on the server is above or below the amount for the specified period of time.
To enable this condition, specify the memory usage and duration that triggers the alert. 

Server Thread count
    
The thread count on the JVM is above or below the level for the specified period of time.
To enable this condition, specify the thread count and duration that triggers the alert.
The following alerts vary according to the target type (server, server groups, or clusters) and require no additional parameters: 

Servers
    
  * **Agent version changed**
  * **Runtime version changed**
  * **Server connected**
  * **Server deleted**
  * **Server disconnected**



Server Groups
    
  * **Server Group connected**
  * **Server Group deleted**
  * **Server Group disconnected**
  * **Server Group’s node connected**
  * **Server Group’s node disconnected**
  * **Server added to Server Group**
  * **Server removed from Server Group**



Clusters
    
  * **Cluster connected**
  * **Cluster deleted**
  * **Cluster disconnected**
  * **Cluster presents visibility issues**
  * **Cluster’s node connected**
  * **Cluster’s node disconnected**
  * **Server added to Cluster**
  * **Server removed from Cluster**


## Alert Variables
You can use the following variables in the alert email **Subject** and **Message** fields. For the description of each variable, see Variable Definitions.
You can’t use the combination of characters .   
---  
Table 1. Variables for Alerts Alert Type | Alert | Applicable Variables  
---|---|---  
`${resource}` `${severity}` `${state}`  
CloudHub App Alerts |  **CPU usage - CloudHub** |  `${operator}` `${value}`  
**Memory usage - CloudHub**  
**Custom application notification** |  `${user}` `${priority}` `${transactionId}` `${message}`  
**Deployment failed** |  `${user}` `${message}`  
**Deployment success**  
**Worker not responding**  
**Exceeds event traffic threshold** |  `${period}` `${periodTimeUnit}`  
Hybrid App Alerts |  All Hybrid App Alerts  
**Number of Mule messages** |  `${currentValue}` `${threshold}` `${location}`  
**Number of errors**  
Server Alerts |  All Server Alerts  
**Agent version changed** |  `${oldVersion}` `${newVersion}`  
**Runtime version changed**  
**Server CPU usage** |  `${currentValue}` `${comparison}` `${threshold}` `${location}`  
**Server Load average**  
**Server Memory average**  
**Server Thread count**  
Server Group Alerts |  All Server Group Alerts  
**Server Group’s node CPU usage** |  `${memberName}` `${groupName}` `${currentValue}` `${comparison}` `${threshold}` `${location}` `${parentResource}` `${parentLocation}`  
**Server Group’s node Load average**  
**Server Group’s node Memory usage**  
**Server Group’s node Thread count**  
**Server Group’s node connected** |  `${memberName}` `${groupName}`  
**Server Group’s node disconnected**  
**Server added to Server Group**  
**Server removed from Server Group**  
Cluster Alerts |  All Cluster Alerts  
**Cluster’s node CPU usage** |  `${memberName}` `${clusterName}` `${currentValue}` `${comparison}` `${threshold}` `${location}` `${parentResource}` `${parentLocation}`  
**Cluster’s node Load average**  
**Cluster’s node Memory usage**  
**Cluster’s node Thread count**  
**Cluster’s node disconnected** |  `${resource}` `${memberName}` `${clusterName}`  
**Cluster’s node connected** |  `${memberName}` `${clusterName}`  
**Server added to Cluster**  
**Server removed from Cluster**  
Table 2. Variable Definitions Variable | Definition  
---|---  
`${clusterName}` | Name of the cluster  
`${currentValue}` | Current value of metric that triggers the alert  
`${comparison}` | Above or Below  
`${groupName}` | Name of the server group  
`${location}` | Where to find more information about the alert  
`${memberName}` | Name of the node in a server group or cluster  
`${message}` | Message from the notification that trigger the alert  
Name of the item that triggers the alert:
  * Hybrid Apps: Name of the app that triggers the alert
  * Servers: Name of the target (server, server group, or cluster) that triggers the alert

  
`${newVersion}` | New version number for the agent or runtime  
`${oldVersion}` | Previous version number for the agent or runtime  
`${operator}` | An operator, such as `< > =`  
`${parentLocation}` | Where to find more information about the alert on the node’s parent cluster  
`${parentResource}` | Name of the resource, such as server or app, on the node’s parent cluster that triggers the alert  
`${period}` | Period of time over which to measure  
`${periodTimeUnit}` | Period of time unit  
`${priority}` | Priority of the notification that triggers the alert  
`${resource}` |  Name of the item that triggers the alert:
  * CloudHub Apps: Name of the app that triggers the alert
  * Hybrid Apps: Name of the resource in the app that triggers the alert

  
`${severity}` | Severity of the alert  
State of the resource that triggers the alert, such as Running or Disconnected  
`${threshold}` | Count over the period of time that triggers the alert  
`${transactionId}` | Transaction ID defined in the app or assigned by Mule  
Anypoint Platform organization name  
A value associated with an element  
## Access Alerts in Runtime Manager
You can access alerts in Runtime Manager in several ways.
To display all the alerts associated with your account, click **Alerts** in the left navigation pane:
Figure 3. The arrow shows the **Alerts** menu.
From this page, you can:
  * Create an alert
  * Search for a string in an alert name
  * Filter the displayed alerts by source, condition, severity, or status
  * Click an alert name to change its settings
  * Select an alert to display its status, settings, and history in the details pane:
Figure 4. The arrow shows the alert history in the details pane.


To display the alerts associated with an application or server:
  1. In the **Applications** or **Servers** list, click the **Status** column for the application or server.
  2. Click the **View Associated Alerts** link in the details pane:
Figure 5. The arrow shows the **View Associated Alerts** link in the details pane.


To display the alert history for a server, server group, or cluster, or an application deployed to a local server:
  1. In the **Applications** or **Servers** list, click the application or server name.
  2. Click **Settings** in the left navigation pane.
  3. Click the **Alerts History** tab:
Figure 6. The arrow shows the **Alerts History** tab on the **Settings** page.


## Manage Alerts in Runtime Manager
To manage alerts from the **Alerts** page, select one or more alerts in the list and select an action in the details pane:
Figure 7. The screenshot shows (**1**) the select toggle, (**2**) the alert state switch, (**3**) the **Duplicate** icon, and (**4**) the **Delete** icon. 

Switch an alert on or off
    
All users of Anypoint Platform, even those without permission to create alerts, can control whether email alerts are sent by switching an alert on or off.
When you change the state of an alert, the change is applied for all users who receive email notifications for that alert.
  * To turn alerts off, click the toggle switch:
Figure 8. The arrow shows the alert switch on.
The value in the **Active** column changes from **Yes** to **No**.
  * To turn alerts on, click the toggle switch:
Figure 9. The arrow shows the alert switch off.
The value in the **Active** column changes from **No** to **Yes**.



Create a copy of an alert
    
Select one or more alerts and click the **Duplicate** icon in the details pane:
Figure 10. The arrow shows the **Duplicate** alert icon.
Runtime Manager creates a copy of the alert with `-copy` appended to the name of the original alert. 

Delete an alert
    
Select one or more alerts and click the **Delete** (trash can) icon in the details pane:
Figure 11. The arrow shows the **Delete** alert (trash can) icon.
When prompted, click **OK** to confirm the deletion.
## See Also
  * Custom Application Alerts
  * Monitoring Dashboards
  * Monitor Applications
  * Configure Default Events Tracking
  * Setting Up Basic Alerts in Anypoint Monitoring