سیاست‌های هشدار

تعیین کنید بعد از قطعی چه کسی، با چه کانالی و چه زمانی خبردار شود؛ و سیاست پیش‌فرض چیست.

سیاست چیست؟

سیاست هشدار می‌گوید وقتی قطعی باز شد، چه موقع و با کدام کانال‌ها اطلاع بدهیم. هر سیاست چند «مرحله» دارد؛ اگر کسی قطعی را تأیید (Ack) نکند، مرحله‌ی بعد می‌رسد (تشدید هشدار یا Escalation). سیاست را یک‌بار می‌سازید و روی چند مانیتور اعمال می‌کنید.

ساخت یک سیاست

  1. «سیاست‌ها ← سیاست جدید».
  2. نام بدهید، مثلاً «سرویس‌های حیاتی».
  3. حداقل مدت قطعی برای هشدار (ثانیه): اولین هشدار تا این‌قدر بعد از باز شدن قطعی نمی‌رود (۰ تا ۸۶۴۰۰). عدد کوچک یعنی سریع‌تر خبردار می‌شوید ولی شانس هشدارِ اضافه برای قطعی‌های چندثانیه‌ای بیشتر است.
  4. مراحل اطلاع‌رسانی: تا ۱۰ مرحله؛ هر مرحله «بعد از N دقیقه از باز شدن قطعی» و حداقل یک کانال (تلگرام، بله، ایمیل، Push مرورگر، پیامک، تماس صوتی).
  5. گزینه‌ی «فقط با تأیید (Ack) کاربر، ارسال هشدارهای بعدی متوقف شود» را (پیش‌فرض: فعال) نگه دارید یا بردارید.
  6. «ساخت سیاست».

پیام «بازیابی» و «ناپایدار» هم تابع سیاست‌اند

  • پیام بازیابی فقط به کانال‌های «اعلان رفع قطعی» همین سیاست می‌رود. اگر هیچ کانالی انتخاب نکرده باشید، بازیابی اصلاً ارسال نمی‌شود.
  • بازیابی فقط وقتی ارسال می‌شود که قبلش یک هشدار قطعی (طبق مراحل سیاست) تلاش شده باشد. قطعی‌ای که قبل از «حداقل مدت قطعی برای هشدار» تمام شود، نه هشدار دارد نه بازیابی.
  • بازیابی فقط روی کانال‌های رایگان (تلگرام، بله، ایمیل، Push) می‌رود؛ پیامک و تماس برای بازیابی استفاده نمی‌شوند.
  • اگر مانیتوری را حذف یا متوقف کنید، قطعیِ بازِ آن بی‌صدا بسته می‌شود و دیگر هیچ هشدار یا تکراری نمی‌رود (پیام بازیابی هم نمی‌آید). با فعال‌کردن دوباره، اگر واقعاً خراب بود، قطعی تازه با هشدار تازه باز می‌شود.
  • اعلان «ناپایدار» (Flapping) هم فقط به کانال‌های رایگانِ مراحل همین سیاست می‌رود، نه همه‌ی مخاطبین حساب.

زمان‌بندی هشدارها

  • مرحله‌ی اول همیشه در لحظه‌ی «باز شدن قطعی + حداقل مدت قطعی» می‌رود، هر عددی که برای «بعد از N دقیقه»ی آن مرحله نوشته باشید.
  • مرحله‌ی دوم به بعد N دقیقه بعد از باز شدن قطعی می‌رود (نه بعد از مرحله‌ی قبل). اگر آن زمان گذشته باشد، فوراً.
  • در هر مرحله به همه‌ی مخاطب‌های تأییدشده‌ی هر کانال انتخاب‌شده پیام می‌رود.
  • بعد از آخرین مرحله دیگر هشداری نمی‌رود (سیاست‌های ساخته‌شده از فرم، تکرار ندارند).
  • اگر قطعی تأیید شود و گزینه‌ی توقف با Ack فعال باشد، مراحل بعدی نمی‌رود. اگر مانیتور برگردد، پیام بازیابی می‌رسد.
  • در بازه‌ی نگهداری یا هنگام «ناپایدار» بودن، ارسال به تعویق می‌افتد و بعد از پایان آن ادامه می‌یابد (بازه‌های نگهداری).

شرط‌های ترکیبی

اختیاری و حداکثر ۲۰ مورد. هرکدام یک شرط روی «زمان پاسخ (میلی‌ثانیه)» یا «وضعیت مانیتور» دارد و اگر برقرار بود، کانال‌هایی را علاوه بر کانال‌های مرحله اضافه می‌کند. مثال: «اگر زمان پاسخ بیشتر از ۵۰۰۰ بود، پیامک هم بفرست». زمان پاسخ از آخرین بررسی موفق می‌آید.

قالب پیام

پایین فرم می‌توانید یک «قالب پیام هشدار» انتخاب کنید و مشخص کنید هر متغیر ({1} تا {4}) چه چیزی نشان دهد: نام سرویس، آدرس، مدت قطعی یا یک فیلد از JSON که مانیتور وب‌هوک خطای شما می‌فرستد. بدون انتخاب قالب، پیام پیش‌فرض سیستم ارسال می‌شود. جزئیات و مثال: قالب‌های پیام و توکن‌ها.

اعمال روی مانیتور

سیاست خودکار به مانیتور وصل نمی‌شود. در صفحه‌ی هر مانیتور، کارت «سیاست هشدار» را باز کنید، سیاست را انتخاب کنید و «اعمال» بزنید. هر مانیتور یک سیاست دارد. وقتی قطعی باز می‌شود، سیاست آن لحظه در قطعی ذخیره می‌شود؛ ویرایش بعدی سیاست روی قطعی‌های باز اثری ندارد.

حذف سیاست، مانیتورهایش را به سیاست پیش‌فرض سیستم برمی‌گرداند.

سیاست پیش‌فرض سیستم

مانیتوری که سیاستی ندارد، با این برنامه هشدار می‌دهد:

زمان بعد از باز شدن قطعیاقدام
۵ دقیقهپیام در تلگرام و بله
۱۰ دقیقهپیامک
۲۰ و ۴۰ دقیقهتماس صوتی به نوبت‌دار (on-call) — فقط اگر چرخه‌ی on-call با نام rotation_1 با API ساخته باشید
  • پیامک هر ۱۵ دقیقه و تماس هر ۳۰ دقیقه تکرار می‌شود، با سقف ۵ پیامک و ۳ تماس برای هر قطعی (بعد از سقف، پیام تلگرام می‌رود).
  • این سیاست تنها جایی است که «ناپایدار» (Flapping) فعال است.

نمونه‌ی سیاست‌های خوب

موقعیتمراحل پیشنهادی
سرویس حیاتی (پرداخت، API اصلی)حداقل مدت ۶۰ ثانیه · مرحله‌ی ۱: بله + تلگرام · ۵ دقیقه: پیامک · ۱۵ دقیقه: تماس صوتی
سایت معمولیحداقل مدت ۳۰۰ ثانیه · مرحله‌ی ۱: بله/تلگرام + ایمیل · ۳۰ دقیقه: پیامک
سرویس غیر حیاتی (آزمایشی)حداقل مدت ۶۰۰ ثانیه · فقط ایمیل
کار شبانه (بکاپ/cron با Heartbeat)حداقل مدت ۰ · مرحله‌ی ۱: ایمیل + بله · ۶۰ دقیقه: تماس صوتی

نمی‌خواهید قطعی بسازید و فقط یک پیام یا تماس مشخص بفرستید؟ از «کلید فراخوانی» استفاده کنید: پیامک و تماس سفارشی.