امروزه روز برای مدیریت , بک آپ و انجام یکسری از فرآیند ها سمت سرور از اسکریپت هایی کمک میگیریم و درنهایت اون اسکریپت ها رو در زمان های مختلفی اجرا میکنیم
طبیعتا انجام درست اون اسکریپت برای ما میتونه خیلی مهم باشه به طور مثال فرض کنید اسکریپت بک آپ از فایل های وب سرور به مشکل بخوره وفردای اون روز برحسب اتفاق هارد سرور کرش کنه و بسوزه اون موقع شاید به این فکر بیوفتید که چرا پروسه مانیتور کردن crontab رو قبلا انجام ندادید 🙂
تو این مقاله میخواهیم با استفاده از سایت healthcheck.io اسکریپت و crontab ها رو مانیتور کنیم
healthcheck.io تو پلن hobby اجازه ایجاد 20 جاب رو به ما میده
تو این سناریو میخواهیم یک اسکریپتیرو که از /var/log بک آپ میگیره رو هر 5 دقیقه 5 دقیقه schedule (توی crontab) کنیم
و همینطور از سایت Healthcheck.io برای مانیتور کردن اینکه آیا این job انجام شده یا نه استفاده میکنیم
تو مرحله اول تو سایت healthcheck.io میریم و به راحتی پروسه ثبت نام رو طی میکنیم
بعد از ثبت نام کافیه برای اضافه کردن یک جاب و مانیتور کردنش ADD Check رو بزنیم
تو مرحله بعدی میریم سراغ تنظیمات اما قبلش بد نیست یکسری مفاهیم رو بدونیم
Period : مدت زمانی که انتظار دریافت پیام از کلاینت رو داریمGrace Time : چه موقعی بگذره اون رو آلرت تلقی کنیم تو این سناریو اسکریپت Backup ما هر 5 دقیقه اجرا میشه پس مقدار period رو 5 قرار میدیم و اگر 10 دقیقه چیزی از کاربر دریافت نشد اون رو یک مشکل درنظر میگیریم (آلرت تو این سناریو بعد از 15 دقیقه ارسال میشه )
از قسمت 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