Creating a Basic Alarm

Create a basic alarm in Monitoring to notify you when metrics meet specified triggers.

For alarm troubleshooting, see Troubleshooting Alarms.

    1. Open the navigation menu and click Observability & Management. Under Monitoring, click Alarm Definitions.
    2. Click Create Alarm.
      The Create Alarm page opens in Basic mode (the default view). The following steps describe how to create an alarm in Basic mode.
    3. Enter a user-friendly name for the alarm. Avoid entering confidential information.

      This name is sent as the title for notifications related to this alarm.

      • For email notifications, the name is used as the subject line of the message.
      • For PagerDuty notifications, the name is used in the title field of the published message.
      • HTTPS, Slack, and SMS notifications don’t use the name as a title.
    4. For Alarm severity, select the perceived type of response required when the alarm is in the firing state.
    5. For Alarm body, enter the human-readable content of the notification.
      We recommend providing guidance to operators for resolving the alarm condition. Consider adding links to standard runbook practices. Example: "High CPU usage alert. Follow runbook instructions for resolution."
    6. (Optional) In the Tags (optional) area, enter one or more tags for the alarm.
      If you have permissions to create a resource, then you also have permissions to apply free-form tags to that resource. To apply a defined tag, you must have permissions to use the tag namespace. For more information about tagging, see Resource Tags. If you're not sure whether to apply tags, skip this option or ask an administrator. You can apply tags later.
    7. In the Metric description area, enter values to specify the metric to evaluate for the alarm.
      • Compartment: Select the compartment  that contains the resources that emit the metrics evaluated by the alarm. The selected compartment is also the storage location of the alarm. By default, the first accessible compartment is selected.
      • Metric namespace: Select the service or application that emits the metrics for the resources that you want to monitor. The Metric namespace list shows metric namespaces for the selected compartment. For example, if the current compartment contains load balancers, then the list includes oci_lbaas.
      • Resource group: Select the group that the metric belongs to. A resource group is a custom string provided with a custom metric, and is not applicable to service metrics.
      • Metric name: Select the name of the metric that you want to evaluate for the alarm. You can select any OCI metric or custom metric if the data exists in the selected compartment and metric namespace.
      • Interval: Select the aggregation window, or the frequency at which data points are aggregated. You can create a custom interval if needed. See also Interval.
      • Statistic: Select the function to use to aggregate the data points.
        • Mean - The value of Sum divided by Count during the specified time period.
        • Rate - The per-interval average rate of change.
        • Sum - All values added together.
        • Max - The highest value observed during the specified time period.
        • Min - The lowest value observed during the specified time period.
        • Count - The number of observations received in the specified time period.
        • P50 - The value of the 50th percentile.
        • P90 - The value of the 90th percentile.
        • P95 - The value of the 95th percentile.
        • P99 - The value of the 99th percentile.
    8. In the Metric dimensions area, specify optional filters to narrow the metric data that's evaluated.
      • Dimension name: Select a qualifier that's specified in the metric definition. For example, the dimension resourceId is specified in the metric definition for CpuUtilization.
      • Dimension value: Select the value to use for the specified dimension. For example, if you selected resourceId as the dimension, select the resource identifier for the instance that you're monitoring.
      • Additional dimension: Add another name-value pair for a dimension, as needed.
      • Aggregate metric streams: Select this check box to return the combined value of all metric streams for the selected statistic.
    9. In the Trigger rule area, specify the condition that must be satisfied for the alarm to be in the firing state. The condition can specify a threshold, such as 90% for CPU utilization, or an absence.
      • Operator: Select the operator to use in the condition threshold. See Predicate Operators.
      • Value: Enter the value to use for the condition threshold. For the between and outside operators, enter both values for the range.
      • Trigger delay minutes: Enter the number of minutes that the condition must be maintained before the alarm is in the firing state.

      The chart under the Define alarm section dynamically displays the last six hours of emitted metrics according to selected fields for the query. Very small or large values are indicated by International System of Units (SI units), such as M for mega (10 to the sixth power). To switch views of data in the chart, see Switching Table and Graph Views for an Alarm Metric Chart.
    10. In the Destination area under Define alarm notifications, select the provider of the destination to use for alarm notifications.
      • Destination service: Select one of the following values:

        If you expect more than 60 messages per minute, select Streaming. For more information, see Alarm Message Limits.
      • Compartment: Select the compartment  that contains the resources that emit the metrics evaluated by the alarm. The selected compartment is also the storage location of the alarm. By default, the first accessible compartment is selected.
      • Stream (for Streaming only): The stream to use for alarm notifications.
      • Topic (for Notifications only): The topic to use for notifications. Each topic supports one or more subscription protocols, such as PagerDuty.
      • To create a new topic (and a new subscription) in the selected compartment, click Create a topic and then enter the following values:
        • Topic name: A user-friendly name for the topic. For example, enter: "Operations Team" for a topic used to notify operations staff of firing alarms. Avoid entering confidential information.
        • Topic description: Description of the new topic.
        • Subscription protocol: Medium of communication to use for the new topic. Select the type of subscription that you want to create, then enter values in the associated fields. For details about each subscription type, click the links.
          • Email: Enter an email address.
          • Function: Select the compartment and application that contain the function that you want, and then select the function.
          • HTTPS (Custom URL): Enter the URL that you want to use as the endpoint.
          • PagerDuty: Enter the integration key portion of the URL for the PagerDuty subscription. (The other portions of the URL are hard-coded.)
          • Slack: Enter the Slack endpoint, including the webhook token.
          • SMS: Select the country for the phone number, and then enter the phone number, using E.164 format. Example: +14255550100
    11. For Message grouping, select one of the following options.
      • Group notifications across metric streams: Collectively track metric status across all metric streams. Send a message when metric status across all metric streams changes.
      • Split notifications per metric stream: Individually track metric status by metric stream. Send a message when metric status for each metric stream changes. For an example, see Scenario: Split Messages by Metric Stream.
    12. For Message Format, select an option for the appearance of messages that you receive from this alarm (for Notifications only).
      • Send formatted messages: Simplified, user-friendly layout. To view supported subscription protocols and message types for formatted messages (options other than Raw), see Friendly formatting.
      • Send Pretty JSON messages (raw text with line breaks): JSON with new lines and indents.
      • Send raw messages: Raw JSON blob.
    13. (Optional) If you want to receive notifications at regular intervals when the alarm is firing, select Repeat notification? and then specify the period of time to wait before resending the notification. See Best Practices for Your Alarms.
    14. (Optional) To suppress evaluations and notifications for a specified length of time, select Suppress notifications. This option is useful for avoiding alarm notifications during system maintenance periods. Specify a start time, end time, and an optional description. See Best Practices for Your Alarms and Adding an Alarm-wide Suppression.
    15. (Optional) To save the alarm without starting to evaluate metric data, clear the Enable this alarm? check box.
    16. Click Save alarm.

    The Alarm Definitions page lists the new alarm. If the alarm is enabled, then Monitoring begins evaluating the configured metric, sending alarm messages when the metric data satisfies the trigger rule.

  • Use the oci monitoring alarm create command and required parameters to create an alarm:

    oci monitoring alarm create --compartment-id <compartment_OCID> --destinations <file_or_text> --display-name <name> --is-enabled <true_or_false> --metric-compartment-id <compartment_OCID> --namespace <metric_namespace> --query-text <mql_expression> --severity <level>

    For a complete list of parameters and values for CLI commands, see the Command Line Reference for Monitoring.

  • Run the CreateAlarm operation to create an alarm.