Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(uptime): add open beta documentation for uptime #11420

Merged
merged 4 commits into from
Sep 25, 2024
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 15 additions & 2 deletions docs/product/alerts/alert-types.mdx
Original file line number Diff line number Diff line change
@@ -1,13 +1,14 @@
---
title: Alert Types
sidebar_order: 10
description: "Learn about the two types of alerts Sentry provides: issue alerts and metric alerts."
description: "Learn about the three types of alerts Sentry provides: issue alerts, metric alerts, and uptime monitoring alerts."
---

You can create two types of alerts:
You can create three types of alerts:

1. **Issue alerts**: Trigger when an issue matches a specific criteria.
2. **Metric alerts**: Trigger when macro-level metrics cross specific thresholds.
3. **Uptime alerts**: Trigger when an HTTP request doesn't return a successful response.

## Issue Alerts

Expand Down Expand Up @@ -112,3 +113,15 @@ The **Alert Details** page shows you the history of a metric alert rule for the
![Alert details illustrates a graph showing the performance of a transaction over time.](./img/alert-details-example.png)

The **Alert Details** page also includes a list of suspect issues or transactions related to the metric, to help pinpoint the root problem more quickly. You can see what might have caused the alert to be triggered, and then open the metric in **[Discover](/product/explore/discover-queries)** to find more information.

## Uptime Alerts

<Include name="feature-stage-beta-uptime.mdx" />

Uptime alerts trigger whenever an uptime check request fails to meet our [uptime check criteria](/product/alerts/uptime-monitoring/#uptime-check-criteria).

In the “Alert Rules” tab, these alerts will include a status of "Up" or "Down" based on the latest uptime check request status.
gaprl marked this conversation as resolved.
Show resolved Hide resolved

### Alert Details

The Alert Details page includes a list of uptime issues that created by the alert. You can click on any of the issues in the list to go to that issue's details page for more information.
gaprl marked this conversation as resolved.
Show resolved Hide resolved
5 changes: 3 additions & 2 deletions docs/product/alerts/create-alerts/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -13,13 +13,14 @@ The minimum role required to create alerts is member. Sentry users with manager
To create alerts:

1. Navigate to **Alerts** and click "Create Alert Rule".
1. Choose what you want to be alerted about. Selecting “Issues” creates an [issue alert](/product/alerts/alert-types/#issue-alerts), while selecting any other option creates a [metric alert](/product/alerts/alert-types/#metric-alerts).
1. Choose what you want to be alerted about. Selecting “Issues” creates an [issue alert](/product/alerts/alert-types/#issue-alerts), selecting “Uptime Monitor” creates an [uptime alert](/product/alerts/alert-types/#uptime-alerts), while selecting any other option creates a [metric alert](/product/alerts/alert-types/#metric-alerts).
![Choice between alerts about Errors, Sessions, Performance, or a Custom Metric](./img/create-new-alert-rule.png)

1. Click "Set Conditions".
1. On the alert configuration page, set the conditions of the alert:
- [Issue Alert Configuration](/product/alerts/create-alerts/issue-alert-config/)
- [Metric Alert Configuration](/product/alerts/create-alerts/metric-alert-config/)
- [Uptime Alert Configuration](/product/alerts/create-alerts/uptime-alert-config/)

## Duplicate Alerts

Expand All @@ -30,4 +31,4 @@ You can also create an alert by duplicating an existing issue or metric alert ru
## Alert Limits

[Issue alerts](/product/alerts/alert-types/#issue-alerts) are limited to 100 alerts with "slow" conditions, and 500 alerts with "fast" conditions.
A "slow" condition is a [change](/product/alerts/create-alerts/issue-alert-config/#change-alerts) or [percent based](/product/alerts/create-alerts/issue-alert-config/#percent-based-alerts) alert. These take more processing time than the "fast" conditions, which are related to issue state changes.
A "slow" condition is a [change](/product/alerts/create-alerts/issue-alert-config/#change-alerts) or [percent based](/product/alerts/create-alerts/issue-alert-config/#percent-based-alerts) alert. These take more processing time than the "fast" conditions, which are related to issue state changes. [Uptime alerts](/product/alerts/alert-types/#uptime-alerts) are limited to 100 alerts.
2 changes: 1 addition & 1 deletion docs/product/alerts/create-alerts/routing-alerts.mdx
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
title: Alert Routing With Integrations
sidebar_order: 30
sidebar_order: 40
description: "Learn more about routing alerts using Sentry integrations."
---

Expand Down
44 changes: 44 additions & 0 deletions docs/product/alerts/create-alerts/uptime-alert-config.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
---
title: Uptime Alert Configuration
sidebar_order: 30
description: "Learn more about the options for configuring an uptime alert."
---

<Include name="feature-stage-beta-uptime.mdx" />

Sentry provides several configuration options to create an uptime alert based on your organization's needs.
gaprl marked this conversation as resolved.
Show resolved Hide resolved

## Environment

Specify which <PlatformLink to="/configuration/environments/">environment</PlatformLink> this alert rule belongs to. [Uptime issues](product/issues/issue-details/uptime-issues/) from this alert rule will be set to the specified environment.

The “Environment” dropdown list here has the same environments that are available for the selected project in the common “Environment” filter dropdown (this does not include hidden environments).
gaprl marked this conversation as resolved.
Show resolved Hide resolved

## Project

Specify which project this alert rule belongs to. [Uptime issues](product/issues/issue-details/uptime-issues/) from this alert rule will be created in the specified project.
gaprl marked this conversation as resolved.
Show resolved Hide resolved

## Request Configuration

Configure how Sentry should execute an HTTP uptime check, by specifying:

- **URL**: The URL Sentry should execute an uptime check request for.
- **Method**: The request method used to execute the uptime check. Available options are `GET`, `POST`, `HEAD`, `PUT`, `DELETE`, `PATCH`, and `OPTIONS`.
- **Headers**: The request headers included in the uptime check request.
- **Body**: The body message to include in the uptime check request. Only available when the method is set to `POST`, `PUT`, and `PATCH`.

In case the specified URL requires a `Content-Type` header to be defined along with the body message, make sure to include it in the headers configuration. Example, a JSON message body would have a `Content-Type` header of `application/json`.

<Alert level="warning">

If the specified URL is behind a firewall, make sure Sentry's Uptime Bot can execute requests to it. [Learn more](http://localhost:3000/product/alerts/uptime-monitoring/troubleshooting/#verify-firewall-configuration).
gaprl marked this conversation as resolved.
Show resolved Hide resolved

</Alert>

## Alert Name

Give your alert a descriptive name, such as the page name. For example, "Landing Page" or "Contat Page".

## Ownership

You can choose a team to associate with an alert so that members of that team can edit the alert. Note that you can only make this association if you are a member of the team. If no team is selected, anyone can edit the alert.
gaprl marked this conversation as resolved.
Show resolved Hide resolved
23 changes: 12 additions & 11 deletions docs/product/alerts/uptime-monitoring/automatic-detection.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -4,22 +4,25 @@ sidebar_order: 51
description: "Learn how automatic detection of uptime monitoring works."
---

<Include name="feature-stage-alpha-uptime.mdx" />
<Include name="feature-stage-beta-uptime.mdx" />

The automatic detection of uptime alerts sets up uptime alerts for the most frequently encountered
hostnames in all URLs of your error data. This helps ensure that critical hostnames are continuously monitored,
enhancing the reliability and availability of your web services.
The automatic detection of uptime alerts sets up an uptime alert for the most frequently encountered hostname in all URLs of your error data. This helps ensure that your most critical hostname is continuously monitored, enhancing the reliability and availability of your web services.
gaprl marked this conversation as resolved.
Show resolved Hide resolved

## How It Works
gaprl marked this conversation as resolved.
Show resolved Hide resolved

We analyze all the URLs detected in your project's captured error data to find the hostname that appears most frequently. We then create an uptime alert if it passes our [uptime check criteria](/product/alerts/uptime-monitoring/#uptime-check-criteria).
We analyze all the URLs detected in your project's captured error data to find the hostname that appears most frequently. We then create an uptime alert if it passes our [uptime check criteria](/product/alerts/uptime-monitoring/#uptime-check-criteria). Automatic uptime checks are configured to run once a minute as GET requests.
gaprl marked this conversation as resolved.
Show resolved Hide resolved

To avoid creating flaky alerts, the hostname undergoes an "onboarding period" of three days. During this period, we send HTTP requests to the hostname every hour. If the request fails at least three times, the hostname is dropped and re-evaluated after seven days.
gaprl marked this conversation as resolved.
Show resolved Hide resolved

<Alert level="info">
Sentry will execute uptime checks against the hostname root path of the most frequently seen URLs. For example, if the most seen URL in your events is `GET https://www.example.com/docs/introduction` the check will be `GET https://www.example.com/`.
Sentry will execute uptime checks against the hostname root path of the most
frequently seen URLs. For example, if the most seen URL in your events is `GET
https://www.example.com/docs/introduction` the check will be `GET
https://www.example.com/`.
gaprl marked this conversation as resolved.
Show resolved Hide resolved
</Alert>

After an automatically detected uptime alert is created, you can [customize its configuration](/product/alerts/create-alerts/uptime-alert-config/) such as the HTTP request method, headers, and request body.
gaprl marked this conversation as resolved.
Show resolved Hide resolved

## Disabling Automatic Detection

If you prefer not to use automatically detected uptime alerts, you have two options to disable them:
gaprl marked this conversation as resolved.
Show resolved Hide resolved
Expand All @@ -33,9 +36,7 @@ Disallow: *
```

<Alert level="warning">
**Note:** The `robots.txt` file will only prevent Sentry from detecting URLs that it encounters in the future. Existing URLs that have already been detected will continue to have uptime alerts unless they are manually deleted.
**Note:** The `robots.txt` file will only prevent Sentry from detecting URLs
that it encounters in the future. Existing URLs that have already been
detected will continue to have uptime alerts unless they are manually deleted.
gaprl marked this conversation as resolved.
Show resolved Hide resolved
</Alert>

## Current Limitations

At present, automatically detected uptime alerts have limited editability. You cannot update the URLs associated with these alerts. Only the alert name and owner can be modified. The ability to edit URLs and other alert settings is planned for a future release. Additionally, each organization is limited to one automatically detected hostname.
29 changes: 17 additions & 12 deletions docs/product/alerts/uptime-monitoring/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -4,31 +4,36 @@ sidebar_order: 50
description: "Learn how to help maintain uptime for your web services by monitoring relevant URLs with Sentry's Uptime Monitoring."
---

<Include name="feature-stage-alpha-uptime.mdx" />
<Include name="feature-stage-beta-uptime.mdx" />

Sentry's Uptime Monitoring lets you monitor the availability and reliability of your web services effortlessly.
In the current version, uptime is [automatically configured](/product/alerts/uptime-monitoring/automatic-detection/) as a new alert for only the most relevant URL detected in your organization. In future updates, you'll have the flexibility to add and monitor additional URLs.
Sentry's Uptime Monitoring lets you monitor the availability and reliability of your web services effortlessly. Once enabled, it continuously tracks configured URLs, delivering instant alerts and insights to quickly identify downtime and troubleshoot issues.

By leveraging [distributed tracing](/concepts/key-terms/tracing/distributed-tracing/), Sentry enables you to pinpoint any errors that occur during an uptime check, simplifying triage and accelerating root cause analysis. This helps you enhance both the reliability and uptime of your web services.

## Set Up

Uptime is [automatically configured](/product/alerts/uptime-monitoring/automatic-detection/) as a new alert for the most most frequently encountered hostname in all URLs of your error data, ensuring continuous monitoring of your most critical hostname right out of the box.

You can also [create uptime monitoring alerts](/product/alerts/create-alerts/) for specific URLs, fully customizable with request details such as the HTTP method, headers, and body.
gaprl marked this conversation as resolved.
Show resolved Hide resolved

## Uptime Check Criteria

Our uptime monitoring system verifies the availability of your URLs
by performing GET requests at regular 5-minute intervals.
For a URL to be considered up and running, the response must meet the following criteria:
Our uptime monitoring system verifies the availability of your URLs by performing HTTP requests at regular, pre-configured intervals. For a URL to be considered up and running, the response must meet the following criteria:

1. **Successful Response (2xx Status Codes):**
The URL must return an HTTP status code in the 200–299 range, indicating a successful request.
The URL must return an HTTP status code in the 200–299 range, indicating a successful request.
2. **Automatic Handling of Redirects (3xx Status Codes):** Sentry will follow redirects for URLs returning an HTTP status code in the 300–399 range and verify that the final destination URL returns a successful response. This ensures that redirects won't falsely trigger downtime alerts.
3. **Timeout Setting:** Each request has a timeout threshold of 10 seconds.
If the server doesn't respond within this period, the check will be marked as a failure,
indicating a potential downtime or performance issues.
If the server doesn't respond within this period, the check will be marked as a failure,
indicating a potential downtime or performance issues.
4. **DNS Issue Detection:** Our monitoring also includes the detection of DNS resolution issues.
If a DNS issue is detected, the check will be marked as a failure,
allowing you to address the underlying connectivity problems.
If a DNS issue is detected, the check will be marked as a failure,
allowing you to address the underlying connectivity problems.

## Notifications

An uptime alert continuously monitors the configured URL with the criteria defined above. If a failure is detected,
a new [uptime issue](/product/issues/issue-details/uptime-issues/) with failed check and related errors details will be created.
a new [uptime issue](/product/issues/issue-details/uptime-issues/) with the failed check and related error details will be created. To avoid triggering false alerts due to transient issues like network glitches, a new issue is created only after detecting a minimum of three consecutive failures following the initial downtime detection.
gaprl marked this conversation as resolved.
Show resolved Hide resolved

To start getting notifications for a new downtime issue, [configure an issue alert](/product/alerts/create-alerts/issue-alert-config/) and choose the issue category "uptime". Then choose how you'd like to be notified (via email, Slack, and so on).

Expand Down
6 changes: 1 addition & 5 deletions docs/product/alerts/uptime-monitoring/troubleshooting.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -4,11 +4,7 @@ sidebar_order: 52
description: "Learn how to troubleshoot potential Uptime Monitoring problems."
---

<Include name="feature-stage-alpha-uptime.mdx" />

## Verify Feature Eligibility

Uptime alerts are only available for organizations that have early adopter features enabled. They must also have URLs that match our [auto detection criteria](/product/alerts/uptime-monitoring/automatic-detection/#how-it-works). In the current version, organizations are limited to a single uptime alert.
<Include name="feature-stage-beta-uptime.mdx" />

## Verify Firewall Configuration

Expand Down
2 changes: 1 addition & 1 deletion docs/product/issues/issue-details/uptime-issues/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ sidebar_order: 40
description: "Learn how to use the information on the Issue Details page to debug an error issue."
---

<Include name="feature-stage-alpha-uptime.mdx" />
<Include name="feature-stage-beta-uptime.mdx" />

An uptime issue is a grouping of detected downtime events for a specific URL. A downtime event is generated by
active uptime alerts when HTTP requests fail to meet our
Expand Down
3 changes: 0 additions & 3 deletions includes/feature-stage-alpha-uptime.mdx

This file was deleted.

6 changes: 6 additions & 0 deletions includes/feature-stage-beta-uptime.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
<Note>

Sentry Uptime Monitoring is currently in open beta, so be gentle - features are still in-progress and may have bugs. We recognize the irony.
For any questions or feedback, you can reach us on [Discord](https://discord.gg/sentry) or via email at [[email protected]](mailto:[email protected]).

</Note>
Loading