یک اسکریپت Bash بنویسید که به صورت دوره‌ای بار سیستم (load average) و مصرف حافظه را بررسی کند و در صورت عبور هرکدام از یک آستانهٔ مشخص، با ارسال ایمیل یا POST به یک webhook (مثل Slack) اعلان ارسال نماید.

16.0 بازدید آخرین ویرایش در 198 روز قبل ساعت 02:06

0.0

برای حل، یک اسکریپت ساده بنویسید که مقدار load average را از /proc/loadavg یا خروجی uptime بخواند و مصرف حافظه را با free -m بررسی کند، مقادیر را با thresholds (مثلاً LOAD_THRESHOLD و MEM_THRESHOLD) مقایسه کند و اگر بیشتر بود با استفاده از mailx/sendmail یا curl یک POST به webhook بفرستد. اسکریپت را اجرایی کنید و با crontab هر چند دقیقه اجرا نمایید؛ برای مقایسهٔ اعداد اعشاری از bc یا awk استفاده کنید، لاگ‌برداری ساده داشته باشید و مطمئن شوید ابزارهای مورد نیاز (mailx/curl) نصب باشند.

توسط پژوهشگر در 198 روز قبل ساعت 02:06
دسته بندی ها: Bash Scripting Bash Scripting for beginner
arash در 198 روز قبل ساعت 02:07

یک نکته عملی: هنگام نوشتن اسکریپت از مقایسهٔ اعداد اعشاری با awk یا bc استفاده کنید و قبل از ارسال اعلان مطمئن شوید ابزارهایی مثل curl یا mailx نصب‌اند. برای جلوگیری از طوفان اعلان‌ها بهتر است مکانیزم debounce/cooldown (مثلاً ذخیرهٔ timestamp آخرین اعلان در یک فایل و نپذیرفتن اعلان جدید تا گذشت X دقیقه) اضافه کنید. به‌جای crontab در سیستم‌عامل‌هایی که systemd دارند می‌توانید systemd timer استفاده کنید که مدیریت و لاگ‌گذاری بهتری ارائه می‌دهد.

گزارش

1 پاسخ

جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من

در حال بارگیری...
ورود به حساب کاربری