مانیتور کردن Crontab با Healthcheck.io
چرا مانیتور کردن crontab مهمه ؟؟
امروزه روز برای مدیریت , بک آپ و انجام یکسری از فرآیند ها سمت سرور از اسکریپت هایی کمک میگیریم و درنهایت اون اسکریپت ها رو در زمان های مختلفی اجرا میکنیم
طبیعتا انجام درست اون اسکریپت برای ما میتونه خیلی مهم باشه به طور مثال فرض کنید اسکریپت بک آپ از فایل های وب سرور به مشکل بخوره وفردای اون روز برحسب اتفاق هارد سرور کرش کنه و بسوزه اون موقع شاید به این فکر بیوفتید که چرا پروسه مانیتور کردن crontab رو قبلا انجام ندادید 🙂
تو این مقاله میخواهیم با استفاده از سایت healthcheck.io اسکریپت و crontab ها رو مانیتور کنیم
healthcheck.io تو پلن hobby اجازه ایجاد 20 جاب رو به ما میده
سناریو چیه ؟
تو این سناریو میخواهیم یک اسکریپتیرو که از /var/log بک آپ میگیره رو هر 5 دقیقه 5 دقیقه schedule (توی crontab) کنیم
و همینطور از سایت Healthcheck.io برای مانیتور کردن اینکه آیا این job انجام شده یا نه استفاده میکنیم
مرحله اول : ثبت نام تو سایت Healthcheck.io
تو مرحله اول تو سایت healthcheck.io میریم و به راحتی پروسه ثبت نام رو طی میکنیم
بعد از ثبت نام کافیه برای اضافه کردن یک جاب و مانیتور کردنش ADD Check رو بزنیم
مرحله دوم :
تو مرحله بعدی میریم سراغ تنظیمات اما قبلش بد نیست یکسری مفاهیم رو بدونیم
Period : مدت زمانی که انتظار دریافت پیام از کلاینت رو داریمGrace Time : چه موقعی بگذره اون رو آلرت تلقی کنیم تو این سناریو اسکریپت Backup ما هر 5 دقیقه اجرا میشه پس مقدار period رو 5 قرار میدیم و اگر 10 دقیقه چیزی از کاربر دریافت نشد اون رو یک مشکل درنظر میگیریم (آلرت تو این سناریو بعد از 15 دقیقه ارسال میشه )
مرحله سوم : Integration
از قسمت integration میتونیم چنلیا مدیایی که دوست داریم از اون آلرت ها برامون ارسال بشه رو انتخاب میکنیم
healtcheck.io مدیا های مختلفی رو برای Notify کردن ساپورت میکنه و به صورت پیش فرض اگر از قسمت Integration مدیاای انتخاب نکرده باشید ایمیل Notification Method پیش فرض خواهد بود
ارسال آلرت ها به تلگرام :
در مرحله اول یک پیام start به ربات @healthchecksbot بدهید
به محض دریافت پیام start ربات به شما لینکی خواهد داد که با کلیک روی اون لینک میتونید تیگرام رو به لیست integration پروژتون اضافه کنید
کافی تو لیست integration برید و از این به بعد تلگرام رو هم میتونید تو این لیست ببینید
درنهایت از قسمت Notification Method میتونید لیست Integration ها رو ببنید و با On و OFF کردنشون میتونید اون ها رو اضافه یا حذف کنید
مرحله چهارم : کانفیگ سمت کلاینت
سمت کلاینت به دو صورت میتونیم کانفیگ رو انجام بدیم
1- اسکریپت رو توی crontab اجرا میکنیم و در ادامه URL که سایت healcheck.io داده رو صدا میکنیم
2- روش دوم صدا کردن url سایت healthcheck.io توی اسکریپت + ایجاد شرط بای مطمئن شدن انجام کار
تو این اسکریپت از /var/log یک فایل tar شده درست میشه و در مسیر /home ذخیره میشه برای صحت اینکه کار انجام شده و در صورت انجام درست بک آپ نوتیفیکیشن سمت healthcheck.io ارسال بشود
tar -czPf /home/log.tar.gz /var/log
?$=jobdone
if [ $jobdone -ne 0 ]
then
echo something is wrong
exit 1
else
curl -m 10 --retry 5 https://hc-ping.com/01e09981-75f5-4b09-a854-88735df79049
fi
دیدگاهتان را بنویسید