# 警示與通知

建立指標門檻警示規則、延後短暫觸發、調查事件，並測試五種通知管道。

import ProductScreenshot from "@/components/docs/ProductScreenshot.astro";
import incidentsScreenshot from "@/assets/homepage-highlights/incidents.webp";
import tlsCertificatesScreenshot from "@/assets/homepage-highlights/tls-certificates.webp";

警示功能會根據檢查結果建立事件並傳送通知。建議先建立並測試通知管道，再將它套用至警示規則。

<ProductScreenshot src={incidentsScreenshot} alt="Netstamp 事件畫面，依嚴重程度與時間顯示進行中及已解決的監測事件" caption="事件會保留警示規則、嚴重程度、受影響的檢查及生命週期，方便後續調查。" />

## 通知類型

| 類型     | 必要設定                                         |
| -------- | ------------------------------------------------ |
| Webhook  | HTTPS 端點 URL                                   |
| Slack    | Slack Incoming Webhook URL                       |
| Discord  | Discord Webhook URL                              |
| Telegram | Bot token 與 chat ID                             |
| 電子郵件 | 1 至 50 位收件者，以及可正常寄信的系統 SMTP 設定 |

請在「**警示 → 通知**」中建立通知。設定完成前先保持停用，儲存後再使用「**測試**」。測試成功只代表通知管道能正常傳送，無法證明警示規則的套用範圍正確。

Bot token 與 Webhook URL 等機密資訊在儲存後不會再次完整顯示。若需要變更，請在編輯時輸入新的機密值。

## 警示條件指標

警示規則目前使用指標門檻作為條件。

| 檢查 | 可用指標                                                        |
| ---- | --------------------------------------------------------------- |
| Ping | 封包遺失率、平均 RTT、最高 RTT、成功率                          |
| TCP  | 失敗率、平均連線時間、最長連線時間、成功率                      |
| HTTP | 失敗率、平均／最長總耗時、平均／最高 TTFB、成功率、憑證剩餘天數 |

<ProductScreenshot src={tlsCertificatesScreenshot} alt="Netstamp TLS 憑證清單，顯示憑證有效狀態與剩餘天數" caption="HTTP 量測會更新憑證清單，也能在憑證到期前觸發警示。" />

可用運算子為 `>`、`>=`、`<`、`<=` 及 `=`。每項規則還需要選擇嚴重程度、評估時間窗、最低樣本數、條件持續時間與通知管道。

:::note Traceroute 的量測結果可以在「分析」中查看，但目前不支援 Traceroute 警示規則。控制器只提供 Ping、TCP 與 HTTP 檢查的警示指標。 :::

## 條件持續時間

條件必須持續成立超過設定時間，系統才會建立事件或傳送通知。這可以略過短暫且預期中的尖峰，同時在量測歷史中保留相關證據。

評估器會區分以下狀態：

- **觸發中**：樣本數足夠，而且指標已超過門檻。
- **恢復正常**：樣本數足夠，而且指標未超過門檻。
- **樣本不足**：已有資料，但未達規則要求的樣本數。
- **沒有資料**：評估時間窗內沒有可用的量測結果。

「沒有資料」與「樣本不足」不代表檢查成功。如果狀態持續發生，請確認是否缺少檢查指派，或探測器是否離線。

## 事件生命週期

事件紀錄的狀態可能是 `open`、`acknowledged` 或 `resolved`。目前產品介面可以顯示並篩選這些狀態，但尚未提供手動確認事件的操作。當規則持續觸發時，評估器會建立事件；條件恢復正常後，則會將事件標示為已解決。

請搭配事件詳細資料與「分析」進行調查：

1. 記下事件開始及最近一次觸發的時間。
2. 在「分析」中開啟相同檢查與時間範圍。
3. 比較不同探測器範圍。
4. 確認規則是樣本不足，還是條件確實持續觸發。
5. 使用團隊既有的事件處理流程協調負責人。
6. 條件恢復正常後，確認評估器有記錄復原狀態。

## 排查通知傳送問題

如果測試失敗，請檢查目的地 URL 或憑證、控制器對外連線、TLS 信任設定、SMTP 設定及控制器日誌。如果測試成功但事件沒有傳送通知，請確認通知與規則都已啟用、兩者已正確連結，而且背景通知程序已啟用。
