Skip to content
Merged
Changes from all commits
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
46 changes: 39 additions & 7 deletions communicate/maintenance-windows/overview.mdx
Original file line number Diff line number Diff line change
@@ -1,15 +1,18 @@
---
title: 'Maintenance Windows'
description: 'Schedule planned maintenance periods to prevent false alerts.'
description: 'Schedule planned maintenance periods to prevent false alerts and control check behavior during downtime.'
sidebarTitle: 'Maintenance Windows'
---

<Tip>
**Monitoring as Code**: Learn more about the [Maintenance Window Construct](/constructs/maintenance-window).
</Tip>

Maintenance windows allow you to schedule planned downtime for your services, preventing false alerts and preserving accurate availability metrics during system updates, deployments, and infrastructure maintenance activities. During these windows, Checkly stops executing checks for the targeted services, eliminating false alerts while preserving historical availability data.
Maintenance windows allow you to schedule planned downtime for your services, preventing false alerts and preserving accurate availability metrics during system updates, deployments, and infrastructure maintenance activities. During a maintenance window you can pause check execution, silence alert notifications, or both.

<Note>
Manual and triggered check runs (e.g. via the API or the Checkly UI) always execute, even when check execution is paused. However, if alert silencing is enabled, alerts from these runs will still be suppressed.
</Note>

## Creating a maintenance window

Expand All @@ -34,14 +37,43 @@ If your maintenance window repeats at a certain cadence, toggle the **repeat** o
> If you schedule a window on the 31st and add a **monthly repeat cycle**, your schedule will also activate on
> the 30th of the relevant months and the 28th or 29th of February depending on the leap year.

### Adding checks and check groups
### Check behavior

![Maintenance window checks](/images/maintenance-checks-2.png)
Each maintenance window lets you configure how checks behave during the maintenance period. Toggle the behaviors you need:
Comment thread
shiini2 marked this conversation as resolved.

You need to select which checks and/or check groups are targeted by your maintenance window. You do this by:
#### Pause check execution

- Adding the relevant check tags.
- Adding the relevant check group tags.
When enabled, scheduled check runs are skipped for the duration of the window. You can scope which checks are paused:

- **All checks** — every check in the account is paused.
- **Checks matching tags** — only checks (and check groups) with matching tags are paused.

#### Silence alerts

When enabled, alert channel notifications are suppressed while checks continue to run and collect data. This is useful when you want to keep monitoring but avoid noisy alerts during expected degradation. You can scope which checks are silenced:

- **All checks** — alerts are silenced for every check in the account.
- **Checks matching tags** — only checks (and check groups) with matching tags have their alerts silenced.

<Warning>
If a check starts failing during the maintenance window and continues failing after the window ends, Checkly will **not** retroactively send an alert once the window is over — the alert is suppressed. After maintenance, check the **Firewatch** section on the home dashboard — it shows checks that started failing recently. Firewatch can be enabled and configured in your account preferences.
</Warning>

<Tip>
You can use different tag sets for pausing and silencing. For example, pause your `api` checks while silencing alerts for `frontend` checks that might be affected by the same deployment.
</Tip>

### Adding checks via tags

You scope which checks are affected by adding tags to the pause or silence configuration. Any checks or check groups with matching tags will be included.

This way, any checks or check groups created *after* creating your maintenance window can still be made part of the window; no
need to update the maintenance window configuration. Just set the correct tags.

## Monitoring maintenance status

During an active maintenance window, the home dashboard shows:
Comment thread
thebiglabasky marked this conversation as resolved.

- A **banner** at the top summarizing which behaviors are active (paused, silenced, or both).
- A **Maintenance badge** on each affected check row, with a tooltip showing the maintenance window name and whether the check is paused, silenced, or both.
- An **Under maintenance** filter in the status filter dropdown, allowing you to quickly find all checks currently affected by a maintenance window.