Skip to main content
Use Chronosphere Observability Platform alerting to generate alerts and notifications from your data, whether it’s about your system or about your usage of Observability Platform itself. Compare your monitor configurations to historical data to ensure your thresholds meet your needs. Observability Platform lets you designate certain monitors as your favorites, listing them on your personal home page and prioritizing them in global search results.

View available monitors

Select from the following methods to view and filter monitors. To query and get detailed information about monitors, see monitor actions.
To display a list of defined monitors, in the navigation menu, select Alerting > Monitors.The list of monitors includes an Alert state column. Each monitor displays a badge showing the icon for its most severe active state, with a text label listing all active alert counts. For example, a monitor with two active critical alerts and one active warning alert shows the critical icon with the label 2 Critical, 1 Warning.Use the following methods to filter your monitors:
  • Using the Search monitors search box (an OR filter).
  • By team, using the Select a team dropdown.
  • By owner, using the Select an owner dropdown. The icon indicates the monitor is part of a collection. The icon indicates this monitor is part of a service.
  • By notification policy, using the Select a notification policy dropdown.
  • By error status:
    • All: Default, displays all monitors.
    • Alerting: Monitors currently in alert status.
    • Critical: Monitors in a critical alert status.
    • Muted: Displays only muted monitors.
  • To filter the table to display only your favorite monitors, enable the View only my favorites toggle.
  • Include connected monitors: If you filter monitors by owner with the toggle disabled, only monitors owned by that owner are returned. When the toggle is enabled, your filter includes monitors that are connected to that owner, even if they aren’t owned by that owner. Connections are based on collections.
Monitors with defined signals display the file tree icon. To view the signals from a displayed monitor, click the name of the monitor from the list.From a monitor’s detail page, click the name of a signal from the Signals section to filter the query results to alerts only from that signal.To search for a specific monitor:
  1. Click the search bar to focus on it, or use the keyboard shortcut Control+K (Command+K on macOS).
  2. Begin typing any part of the monitor’s name.
  3. Optional: Click the filters for all other listed resource types at the top of the search results to remove them and display only monitors.
  4. Click the search result you’re interested in, or use the arrow keys to select it and press enter, to go to that monitor.
For information about what’s available on an individual monitor’s detail page, including query results, series legend, active alerts, alert history, and change events, see Monitor details.

Create a monitor

Most monitors alert when a value matches a specific condition, such as when an error condition defined by the query lasts longer than one minute. You can also choose to alert when a value doesn’t exist, such as when a host stops sending metrics and is likely unavailable. The Web procedure in Create monitors walks through missing data using not exists and signal not exists in Conditions. For how those choices map to configuration, signal grouping, and Prometheus, logs, or Graphite support, see Missing data conditions. To receive alerts when a host stops sending metrics, create a separate monitor for each host and scope the monitor query to that host.

Prerequisites

Before creating a monitor, complete the following tasks:
  1. Create a notifier to define where to deliver alerts and who to notify.
  2. Create a notification policy to determine how to route notifications to notifiers based on signals that trigger from your monitor. You select the notifier you created for the critical or warning conditions on the notification policy.

Create monitors

After completing the prerequisite tasks, use any of the following methods to create a new monitor. While creating or editing a monitor, simulate alerts to backtest your conditions against historical data and see how the alert would have performed.
Chronosphere recommends a minimum query interval of 15 seconds. There can be a 10-second delay between an alert trigger and the notifier activation.
Use one of the following procedures to create a monitor.
To add a new monitor:
  1. In the navigation menu, select one of these locations:
    • Alerting > Monitors.
    • Platform > Collections, and then select the collection you want to create a monitor for. This can be a standard collection or a service.
  2. Create the monitor:
    • From the Monitors page, click Create monitor to open the Add Monitor panel.
    • To create a monitor by duplicating an existing monitor, click the monitor on the Monitors page, then click Duplicate to open the Duplicate monitor panel.
    • From the Collections page, in the Monitors panel, click Manage, then click New monitor.
  3. Enter the information for the monitor based on its data model.
  4. Select an Owner to organize and filter your monitor. You can select a collection or a service.
  5. Enter a Monitor Name, which you can change after creating the monitor. Monitor names are static strings and don’t accept label variables, such as $labels.LABEL_NAME.
  6. Choose a Notification Policy to determine which notification policy to use at a particular alert severity.
  7. Enter Labels as key-value pairs to categorize and filter monitors.
  8. In the Query section, choose the type of query you want to enter:
    • Prometheus: Enter a valid Prometheus query. Click Edit in Query Builder to open your query in the Query Builder, where you can construct, optimize, and debug your query before saving it. After modifying your query, click Done to return to the Add Monitor page.
    • Graphite: Enter a valid Graphite query.
    • Logs: Enter a valid log query, which must include the make-series operator with a specified step size to return data. This operator uses the count() function by default, but you can specify different operators instead. For example, the following query creates a time chart that includes the average for latencyInSeconds. The step parameter defines the time step for each bucket in Prometheus time duration format:
      If the log query includes a field that contains a period in its name and you want to use signals to group notifications, use an alias for that field name. Otherwise, periods are converted to underscores in the generated visualization.
  9. Use these options to validate and update your query:
    • Click Check Query to validate your query and preview query results. In the query preview, use the following options to understand your query:
      • Toggle Show thresholds to display the monitor’s defined thresholds.
      • Select a time range up to the present in the time range selector. If your selected time period has too many alerts, or the entire graph appears to display in alerted status, reduce the selected time period. If multiple alerts would have triggered simultaneously, only one threshold marker displays. The banner shows the correct number of alerts. For example, if a critical and a warning would trigger at the same time, only one alert displays on the graph. The banner shows two alerts would have triggered.
    • Click Open in Explorer to open your query in Metrics Explorer, where you can review your query for syntax errors and make necessary changes.
  10. For Prometheus queries, test monitor conditions by reviewing when a monitor would have triggered, based on historical data. The preview reflects existing monitor schedules, signal grouping, and overrides:
    • Use the Show alert durations toggle to display the time period over which the alert would have been active.
    • Toggle Simulate alerts to backtest your condition against existing data. You must define at least one condition for alert simulations to work.
      Alert simulations use existing data, and can’t predict future alerts.
      If your selected query returns too much data, the graph displays an error. Chronosphere recommends selecting shorter time periods for testing, when possible. Alert simulation isn’t available outside the raw data retention period.
  11. Optional: Group alerts based on the results returned from the query by choosing an option in the Signals section. Signals use a unique set of labels to create groups of notifications when a monitor alert triggers or resolves.
    If you select per signal (multiple alerts) to generate multiple alerts, enter a label key that differs in name and casing from the label you enter in the Key field in the Labels section. For example, if you enter environment in the Key field, you might use Environments as the Label Key to match on. Pinned scopes can be used as a Label Key.
  12. Define a condition and sustain period in the Conditions section, and assign the resulting alert a severity (warning or critical). In the Sustain field, enter a value followed by an abbreviated unit such as 60s. Valid units are s (seconds), m (minutes), h (hours), or d (days). The dialog also displays the notifiers associated with the monitor for reference.
    To generate an alert when the entire monitor query returns no results, select not exists in the Alert when value dropdown. Select signal not exists when alerts should respect signal grouping. For example, all series in a signal must be missing, or any single series when using per-series signals. The signal not exists option requires a sustain duration between 5 minutes and 24 hours.
  13. The fields for defining resolution time depend on the comparison selector you choose. For Resolve when clear for, enter a time period for the resolve window in the Resolve field as a value followed by an abbreviated unit such as 30s. Valid units are s (seconds), m (minutes), h (hours), or d (days). When Alert when value uses one of these comparisons: greater than >, greater than or equal to >=, less than <, or less than or equal to <=, set a Resolve threshold.
    1. Click Add threshold.
    2. Enter a Resolve value. The alert doesn’t clear until the series crosses that separate boundary. If you omit this section, resolution uses the same threshold as the trigger. See Resolve threshold.
  14. In the Monitor schedule section, choose when Observability Platform evaluates the monitor and can send alerts:
    • Always on: The monitor is evaluated continuously and can alert whenever conditions are met. This is the default behavior when you don’t restrict evaluation windows.
    • Scheduled: The monitor is evaluated only during the time windows you define.
      1. Select Time zone for the schedule.
      2. For each time window, set Start and End using 24-hour times in HH:MM form.
      3. Under Repeat every, select the days of the week that window applies to.
      4. Use Add range to add more than one weekly window.
    • Disabled: The monitor doesn’t send alerts. Use this mode to keep the monitor definition without active alerting.
    For schedule behavior, alerting, resolution, and end times, for example 24:00 instead of 23:59, see Schedule in the monitor data model.
  15. Add notes for the monitor in the Annotations section, such as runbook summaries and descriptions.
  16. Optional: In the Links section, add templated links to dashboards, Logs Explorer, and external runbooks.
  17. Optional: To customize the notification title and description, configure a notification template.
  18. Click Save.
For complete monitor definitions in Chronoctl and Terraform that cover both Prometheus and logs queries, see Configuration examples in the monitor data model.

Edit a monitor

Select from the following methods to edit monitors.
Users can modify Terraform-managed resources only by using Terraform. Learn more.
To edit a monitor:When editing a monitor, use the same interface as when you created it.
  1. In the navigation menu, select Alerting > Monitors.
  2. Click the name of the monitor you want to edit.
  3. On the monitor’s page, click Edit in the page header. The Edit monitor drawer opens with the same fields as when you create a monitor.
  4. Make your edits, and then click Save. Refer to the monitor data model for specific definitions.

Override a monitor alert

You can override the default conditions that define when an alert triggers for a monitor. This override is similar to overriding a notification policy that routes a notification to a notifier other than the specified default. On a monitor, you can specify a condition override to use a separate threshold for certain series. For example, a monitor might have a default threshold of >100 but you specify an override threshold of >50 where the label key-value pair is cluster=production. You can specify any label as a matcher for a monitor condition override. If no override matches the defined conditions, Observability Platform applies the default conditions. Additionally:
  • Overrides must specify at least one matcher, and meet every matcher condition to apply the override.
  • Observability Platform evaluates overrides in the listed order. When an override matches, the remaining overrides and defaults are ignored.
  • Overrides don’t inherit any properties from the default conditions. For example, if the default policy route specifies warn and critical notifiers but the override specifies only critical notifiers, the notifier doesn’t send warn notifications.
  • You can’t use NOT_EXISTS or SIGNAL_NOT_EXISTS on override conditions; use them only on default conditions.
Users can modify Terraform-managed resources only by using Terraform. Learn more.
To specify a monitor alert override:
  1. In the navigation menu, select Alerting > Monitors.
  2. Click the name of the monitor you want to specify an override for.
  3. On the monitor’s page, click Edit in the page header. The Edit monitor drawer opens.
  4. In the Condition Override section, click the plus icon to display the override fields.
  5. Select Exact or Regex as the matcher type, and enter the key-value pair to match on for the override.
  6. Select Critical or Warn as the override severity.
  7. Define the match condition and sustain duration.
  8. Optional: Set a Resolve threshold using the same rules as default conditions.
  9. Click Save to apply the override changes.

Delete a monitor

Select from the following methods to delete monitors.
Users can modify Terraform-managed resources only by using Terraform. Learn more.
To delete a monitor:
  1. In the navigation menu, select Alerting > Monitors.
  2. Click the name of the monitor you want to delete.
  3. On the monitor’s page, click Edit in the page header. The Edit monitor drawer opens.
  4. In the drawer footer, click Delete monitor.
  5. In the confirmation dialog, click Delete.

Annotations

Annotations provide runbook summaries, descriptions, and other text context for on-call engineers diagnosing issues. You can template annotation values with alerting variables such as {{ $labels.LABEL }} and {{ $value }}, and add templated links to dashboards, Logs Explorer, and external runbooks. For the full list of variables, Markdown formatting, and procedures to add annotations in the app, Chronoctl, Terraform, and the API, see Use annotations with monitors.