12 KiB
12 KiB
مشخصات درسنامه: سامانههای پایش آپتایم (Uptime Monitoring) و تنظیم هشدارهای تلگرام و ایمیل با UptimeRobot
- شناسه در سیلابس:
L13.3 - فصل: فصل ۱۳: نگهداری محصول (Ch 13)
- نوع محتوا: 📘 درسنامه متنی
- زمان تقریبی مطالعه: ۱۶ دقیقه
- پیشنیازهای مستقیم:
L13.2(مشاهدهپذیری و مانیتورینگ منابع سرور)
۱. اهداف یادگیری (Learning Objectives - Bloom's Taxonomy)
دانشجو پس از مطالعهٔ این درسنامه باید بتواند:
- درک کند (Understand): مفهوم پایداری و زمان آنلاین بودن (Uptime Percentage) را شرح دهد و بداند چرا کارفرما هرگز نباید اولین نفری باشد که خرابی سایت را به شما گزارش میدهد.
- تحلیل/ارزیابی کند (Evaluate): نحوه عملکرد پایش شبیهسازیشده بیرونی (Synthetic HTTP Health Check) و تفاوت پایش وضعیت HTTP را با پایش کلیدواژه (Keyword Monitoring) تحلیل کند.
- بهکار ببندد (Apply): سرویس رایگان UptimeRobot را برای پایش ۲۴ ساعته دامنه پورتفولیو در فواصل زمانی ۵ دقیقهای از دیتاسنترهای مختلف جهان راهاندازی کند.
- ایجاد کند (Create): یک کانال هشدار فوری در تلگرام (Telegram Bot) و ایمیل متصل نماید که در صورت قطعی سرور یا بازگشت به وضعیت آنلاین، در کمتر از یک دقیقه اعلان فوری دریافت کند.
۲. محدوده و مرزهای محتوا (Scope & Boundaries)
آنچه باید پوشش داده شود (In-Scope):
- قانون طلایی اعتبار مهندسی: باخبر شدن سازنده قبل از بقیه دنیا:
- چرا وقتی یک استخدامکننده لینک پورتفولیو را باز میکند و با صفحه سفید روبرو میشود، فرصت شغلی برای همیشه میسوزد؟
- ریاضیات آپتایم: قانون سه نُه (99.9% Uptime):
- ۹۹.۹٪ به معنای حدود ۸.۷ ساعت قطعی در کل سال است؛ هدف شما پایداری ۹۹.۹۵٪ یا بالاتر است.
- پایشگرهای سلامت بیرونی (Synthetic Heartbeat Monitoring):
- چرا پایش باید از بیرون سرور انجام شود؟ رباتهای سراسر دنیا هر ۵ دقیقه یک پینگ HTTPS به سایت شما میفرستند.
- پایش کدهای وضعیت: کد ۲۰۰ به معنای وضعیت سبز (UP) و هرگونه خطای ۵۰۰، ۵۰۲، ۵۰۳ یا تاخیر طولانی به معنای قطعی (DOWN).
- پایش کلیدواژهای (Keyword Check): اطمینان از اینکه متن مشخصی (مثلاً نام شما یا عنوان پورتفولیو) در خروجی هست و صفحه سفید خالی رندر نشده است.
- راهاندازی گامبهگام UptimeRobot (پلن رایگان با ۵۰ مانیتور):
- ثبت نام سریع و زدن دکمه Add New Monitor.
- انتخاب نوع HTTPS، وارد کردن دامنه و تنظیم بازه چک ۵ دقیقهای.
- اتصال کانالهای اعلام خطر فوری (Alerting Contacts):
- اتصال ایمیل شخصی برای دریافت گزارشهای قطعی و اتصال مجدد.
- اتصال ربات رسمی تلگرام UptimeRobot: عضویت در ربات، دریافت شناسه چت و دریافت پیامهای آنی قطعی به محض بروز حادثه.
- ساخت صفحه وضعیت عمومی (Public Status Page):
- ساخت یک صفحه وضعیت شیک با تاریخچه ۹۰ روزه پایداری برای نشان دادن حرفهایگری به کارفرمایان و مشتریان.
- کالاوتهای آموزشی و هشدار کوئرا:
- کالاوت بنفش (
<details class="violet">): مفهوم آلارم کاذب (False Positive)؛ چرا مانیتور باید بعد از ۲ تلاش ناموفق متوالی آلارم بزند تا با نوسانات چندثانیهای اینترنت هشدار اشتباه ندهد. - کالاوت سبز (
<details class="green">): دریافت نوتیفیکیشن تلگرام در کمتر از ۶۰ ثانیه بعد از قطعی سرور روی گوشی موبایل. - کالاوت قرمز (
<details class="red">): پایش روتهای سنگین دیتابیسی را در بازههای ۳۰ ثانیهای نگذارید؛ پینگهای سنگین مداوم خودشان باعث کندی سرور میشوند!
- کالاوت بنفش (
آنچه نباید وارد آن شویم (Out-of-Scope):
- سامانههای پیجینگ تلفنی گرانقیمت شرکتی نظیر PagerDuty یا Opsgenie.
- کانفیگ سیستمهای بررسی پکتهای خام شبکه ICMP در فایروالها.
۳. مفاهیم کلیدی و کلمات تخصصی (Key Concepts & Terms)
| اصطلاح انگلیسی | معادل فارسی مصوب | توضیح یکخطی ساده |
|---|---|---|
| Uptime / Downtime | زمان پایداری / زمان قطعی | درصد مدت زمانی که سرویس اینترنتی به درستی در دسترس بوده در مقایسه با زمان از کارافتادگی |
| Synthetic Monitoring | پایش ساختگی شبیهساز | ارسال خودکار درخواستهای دورهای از سرورهای مختلف جهان برای سنجش دسترسی به سایت |
| Heartbeat Ping | پالس ضربان قلب | سیگنال دورهای منظم برای اطمینان از زنده بودن و پاسخگویی سرور |
| Alerting Channel | کانال اعلام خطر | بستر ارتباطی (تلگرام، پیامک، ایمیل) که اعلان اضطراری قطعی سرور را به مدیر سیستم میرساند |
| Public Status Page | صفحه وضعیت عمومی | صفحهای شفاف و عمومی که آمار زنده سلامت، پایداری تاریخی و قطعیهای سیستم را نمایش میدهد |
| False Positive | زنگ خطر کاذب | اعلام اشتباه قطعی سیستم به دلیل افت موقت شبکه در یک نقطه محلی بدون اینکه سرور واقعاً خاموش باشد |
۴. جایگاههای تصاویر و نمودارها (Visual & Diagram Placeholders)
راهنمای ایجنت نویسنده: تمام تصاویر باید در پوشهٔ
images/ذخیره شده و در جدول تکخانهای وسطچین درج شوند:
- تصویر کاور درس:
images/cover.png- موضوع: زنگ نئونی هشدار دیجیتال در حال مخابره پیام به یک گوشی هوشمند با نماد ربات تلگرام و چراغ سبز فعال سرور.
- چرخه پایش سلامت و ارسال هشدار:
images/uptime-monitoring-flow.png- موضوع: فلوچارت: رباتهای UptimeRobot درخواست میفرستند
\rightarrowسرور پاسخ نمیدهد (خطای ۵۰۲)\rightarrowتست مجدد بعد از ۳۰ ثانیه\rightarrowارسال پیام هشدار فوری به تلگرام توسعهدهنده.
- موضوع: فلوچارت: رباتهای UptimeRobot درخواست میفرستند
- تنظیم مانیتور و هشدارهای تلگرام در کنسول UptimeRobot:
images/uptimerobot-dashboard-setup.png- موضوع: اسکرینشات از داشبورد UptimeRobot با فرم ثبت مانیتور جدید، تنظیم اینتروال و تیک زدن تلگرام و ایمیل.
- نمونه پیام هشدار قطعی و اتصال مجدد در تلگرام:
images/telegram-alert-message-preview.png- موضوع: اسکرینشات از چتباکس تلگرام با پیامهای قرمز «Monitor is DOWN» و پیام سبز بعدی «Monitor is UP».
۵. بخشبندی و ساختار محتوایی پیشنهادی درسنامه (README.md)
- تیتر اصلی:
# سامانههای پایش آپتایم (Uptime Monitoring) و تنظیم هشدارهای تلگرام و ایمیل با UptimeRobot - مقدمه: اگر ساعت ۴ صبح سایت شما قطع شود، ترجیح میدهید ساعت ۹ صبح با صدای اعتراض کارفرما بیدار شوید یا ساعت ۴:۰۱ با اعلان هوشمند در تلگرامتان؟
- جدول کاور درس
- استعاره نگهبان شبانه ۲۴ ساعته:
- سیستم پایشگری که هرگز نمیخوابد و هر ۵ دقیقه یک بار سلامت دروازه قلعه شما را چک میکند.
- مفهوم پایداری و در دسترس بودن (Uptime):
- معنی درصدهای ۹۹.۹٪ و تاثیر مستقیم آن بر سئو و اعتماد کاربران.
- آموزش عملی ثبت مانیتور در UptimeRobot:
- گامبهگام ساخت حساب، انتخاب پروتکل HTTPS، و تعیین فاصله زمانی ۵ دقیقهای.
- تکنیک پیشرفته: پایش کلیدواژه (Keyword Monitoring):
- چرا گاهی سرور کد ۲۰۰ برمیگرداند اما صفحه سفید یا پیام خطاست؟ جستجوی هوشمند کلمات داخل صفحه.
- اتصال کانال تلگرام برای دریافت اعلانهای آنی:
- آموزش استارت ربات رسمی تلگرام UptimeRobot و اتصال آن به اکانت کاربری.
- ساخت صفحه وضعیت عمومی (Status Page) برای پورتفولیو:
- نمایش کارنامه درخشان پایداری و ایجاد حس اعتماد در اولین نگاه کارفرما.
- باکس نکته Quera (
<details class="violet">): جلوگیری از آلارمهای کاذب؛ تنظیم شرط اعلام قطعی تنها پس از ۲ بار تلاش ناموفق پیاپی. - باکس هشدار Quera (
<details class="red">): مانیتور را روی صفحات سنگین نیازمند لاگین نگذارید؛ همیشه صفحه اصلی یا یک اندپوینت سبک/api/healthرا مانیتور کنید. - باکس رضایتبخش Quera (
<details class="green">): شبیهسازی قطعی سرور (توقف موقت در پنل) و شنیدن صدای زنگ هشدار تلگرام در کمتر از ۶۰ ثانیه روی گوشی. - جمعبندی درسنامه: مجهز شدن به سیستم هشدار سریع؛ ورود به ایستگاه کالبدشکافی خطاهای زنده پروداکشن با سنتری (Sentry) در درس بعدی.
۶. معیارهای پذیرش (Acceptance Criteria for Reviewer)
- مفهوم آپتایم و چرخه مانیتورینگ بیرونی به روشنی بیان شود.
- راهاندازی گامبهگام UptimeRobot به صورت عملی آموزش داده شود.
- نحوه اتصال ربات تلگرام و دریافت اعلانهای لحظهای در متن لحاظ گردد.
- مفهوم پایش کلیدواژه و صفحه وضعیت عمومی (Status Page) تشریح شود.