# Alerts

> Turn on the rules that tell you when the server or the Xray core is in trouble.

Source: https://joinnasnet.com/en/guides/nasnet-linux/alerts/
Last updated: 2026-08-14

---

## Overview

**Alerts** is a rule engine plus a log of what it fired. Rules are seeded on
first start and are **disabled by default**, so nothing notifies you until you
deliberately turn it on. That design avoids surprise messages, but it also means
a fresh install is silent until you visit this page. Delivery goes out through
the Telegram, Discord and webhook channels configured under
**Settings → Notifications**.

## Before you start

- Configure a delivery channel first. Enabling a rule with no channel set up
  means the rule fires into nothing.
- If you are using Telegram delivery, confirm the bot token is set before you
  enable rules.

## Steps

1. Open **Alerts** from the sidebar.
2. Under **Rules**, read what each rule fires on, then toggle on the ones you
   want.
3. Open a rule's threshold editor to tune it. Each rule type exposes only the
   fields that apply to it.
4. Use the test action on a rule to send a test alert and verify delivery end to
   end.
5. Watch **Recent Events** below. It shows the last 100 fires and resolutions
   and refreshes every 15 seconds.

## Reference

| Rule | Fires when | Tunable |
| ---- | ---------- | ------- |
| Node Offline | The node stops heartbeating. | Nothing to tune. |
| Xray Crash Loop | Too many crashes inside a window, by default 5 crashes in 300s. | Count, window |
| High CPU | CPU stays above a threshold for a duration, by default above 90% for 300s. | Value, duration |
| High Disk | Disk goes above a threshold, by default above 90%. | Value, duration |

When a rule fires it publishes a `system.alert` event, which the notification
dispatcher routes to your enabled channels. Rules carry state, so the engine
knows when a condition starts and when it clears, and both appear in the event
timeline.

Separately, **Settings → Xray Monitoring** controls the crash-detection
behaviour itself: the crash-loop threshold and stability period, a notification
cooldown to prevent spam during a crash loop, and an auto-disable safety that
stops Xray after too many failures.

## Troubleshooting

**A rule is enabled but nothing arrives.** Send a test alert from the rule. If
the test does not arrive either, the problem is the channel rather than the rule, so
check **Settings → Notifications**.

## Related

- [Metrics and monitoring](/en/guides/nasnet-linux/monitoring/)
- [Settings](/en/guides/nasnet-linux/settings/)
- [Server](/en/guides/nasnet-linux/server/)
