Uptime & Outages
nsin بین بازدیدکنندگان شما و سرورتان مینشیند، پس میتواند ببیند وقتی سرور شما (origin) درست پاسخ نمیدهد — حتی اگر خود nsin خوب سرو میکند. وقتی این تکرار شود، nsin یک incident باز میکند و به شما میگوید. این را زیر Uptime در sidebar دامنهتان پیدا کنید.
چه چیزی “down” حساب میشود
Section titled “چه چیزی “down” حساب میشود”nsin سایت شما را از بیرون ping نمیکند. ترافیک واقعی بازدیدکنندگان را تماشا میکند، و requestهایی که سرور شما درست پاسخ نداده را میشمارد.
یک subdomain برای یک دقیقه down حساب میشود وقتی سهم requestهای failشده بالاتر از threshold شما باشد، و در آن دقیقه ترافیک کافی بوده باشد که عدد معنا داشته باشد. کف ترافیک مهم است: دو fail از سه request ساعت ۴ صبح نویز است، نه یک outage.
Incidentها
Section titled “Incidentها”یک incident وقتی باز میشود که یک subdomain تمام detection window را down بماند — نه فقط یک دقیقه بد — و بعد از یک سری دقیقههای تمیز بسته میشود. هر incident hostname، زمان شروع، زمان بهبود، و بدترین error rate را ثبت میکند.
Live status
Section titled “Live status”نمای live هر subdomain را همین الان نشان میدهد، شامل آنهایی که error میدهند اما هنوز از thresholdهای شما رد نشدهاند — وقتی چیزی درست به نظر نمیرسد اما هیچ alertای نیامده آن را چک کنید. برای هر host requestهای دیدهشده در window، چند تا fail شده، درصد error، و اینکه آیا الان down حساب میشود را میبینید.
تنظیمات
Section titled “تنظیمات”زیر Uptime → Settings میتوانید detection را برای ترافیک خودتان تنظیم کنید:
| تنظیم | یعنی چه |
|---|---|
| Alerts on/off | آیا outage notification برای این دامنه ارسال میشود. |
| Threshold | درصد requestهای failشده در دقیقه که down حساب میشود. |
| Window | host چقدر باید down بماند تا یک incident باز شود. |
| Minimum requests | کف ترافیک — زیر این، هیچ incident باز نمیشود. |
| Minimum active minutes | چند دقیقه در window باید ترافیک واقعی داشته باشد. |
| Recovery | چند دقیقه تمیز پشتسرهم incident را میبندد. |
هر تنظیم یک بازه معتبر دارد، کنار آن در پنل نشان داده میشود.
چه کسی notification میگیرد
Section titled “چه کسی notification میگیرد”Notification به owner دامنه و به هر memberی که outage notification را روشن دارد میرود. هر member آن را جداگانه کنترل میکند، پس یک همکار در آژانس میتواند uptime را تماشا کند بدون اینکه هر notification دیگری را هم بگیرد.
Notification channels
Section titled “Notification channels”Notification channels، در صفحه Uptime، تصمیم میگیرد alertهای دامنه کجا بروند. سوییچها روی همه اعمال میشوند — owner و memberها — روی هر ترجیح شخصی هر member. Alertها همیشه در پنل نشان داده میشوند، هر چیزی که خاموش باشد.
| Channel | پیشفرض | توضیح |
|---|---|---|
| On | ||
| SMS | On | فقط planهای پولی. شماره موبایل ایرانی تأییدشده. |
| Webhook | Off | روی هر plan رایگان است. یک URL برای هر دامنه. |
Webhook
Section titled “Webhook”یک URL با http:// یا https:// ذخیره کنید و webhook را روشن کنید.
nsin یک POST با body از نوع JSON میفرستد وقتی یک outage باز میشود
(outage.opened) و برطرف میشود (outage.resolved) — یک بار برای هر
incident. Test یک event نمونه test میفرستد.
{ "event": "outage.opened", "incident_id": 4312, "domain": "example.com", "hostname": "api.example.com", "monitor_id": null, "scope": "", "peak_error_pct": 100, "started_at": "2026-09-20T10:14:00Z", "resolved_at": null, "duration_sec": null, "sent_at": "2026-09-20T10:14:02Z"}با هر 2xx ظرف ۵ ثانیه پاسخ بدهید؛ هر چیز دیگری دو بار دوباره امتحان
میشود، بعد از ۵ و ۳۰ ثانیه. Redirectها دنبال نمیشوند، و URLهایی که به
آدرسهای private یا local اشاره میکنند رد میشوند. آخرین deliveryها
زیر فیلد URL لیست میشوند.
امضا را verify کنید. هر request حامل X-Nsin-Timestamp و
X-Nsin-Signature است. امضا sha256= بهعلاوه hex HMAC-SHA256 از
<timestamp>.<raw body> است، با signing secret نشاندادهشده در صفحه:
import crypto from 'node:crypto';
function verify(req, rawBody, secret) { const ts = req.headers['x-nsin-timestamp']; const want = 'sha256=' + crypto.createHmac('sha256', secret).update(`${ts}.${rawBody}`).digest('hex'); const got = req.headers['x-nsin-signature'] ?? ''; const fresh = Math.abs(Date.now() / 1000 - Number(ts)) < 300; return fresh && got.length === want.length && crypto.timingSafeEqual(Buffer.from(got), Buffer.from(want));}ساختن یک secret جدید بلافاصله قدیمی را از کار میاندازد.
سؤالات رایج
Section titled “سؤالات رایج”Uptime میگوید down، اما سایت من برایم لود میشود. outageها معمولاً partial هستند — یک subdomain، یک region، یا بعضی requestها. نمای live، و Monitoring → status codes را برای اینکه سرورتان چه برگردانده چک کنید.
اصلاً چیزی اینجا نشان داده نمیشود. Detection روی ترافیک واقعی اجرا میشود — subdomainی که کسی بازدید نکرده دادهای تولید نمیکند — و به یک plan که monitoring دارد نیاز است. ببینید Plans.
آیا nsin در طول یک outage همچنان سرو میکند؟ صفحات cacheشده همچنان سرو میشوند. هر چیزی که nsin باید از سرور شما بگیرد تا وقتی fail میشود fail میماند — این چیزی است که caching و origin failover به آن کمک میکنند.