معرفی سرویس logrotate

معرفی سرویس logrotate

logrotate سرویسی است در لینوکس که اکثرا یکبار در روز اجرا می شود فایل های لاگ سیستم که در آن تعریف شده است تاریخ آرشیو برای آنها تعریف شده است آرشیو یا حذف میشوند.
“Log Rotation” فرآیند آرشیو کردن فایـل لاگ فعلی ایجاد فایل لاگ تازه یا حذف لاگ فایل قدیمی است.
لاگ فایـل (log) فایل هایی می باشند که بوسیله سرویس ها یا برنامه ها جهت اطلاع از عملکرد آنها جهت نظارت کنترل مدیران شبکه یا برنامه نویسان تولید میگردد.


هاست پربازدید

خرید هاست,خرید سرور مجازی,سرور مجازی ایران,هاست پربازدید

مساله ای که در لاگ فایـل ها با اهمیت هستند این است که قطعاً ما نمیخواهیم فایل های بزرگ قدیمی را داشته باشیم یا میخواهیم این فایل ها آرشیو شوند.

ارزش لاگ روتیت (Log Rotate) چیست ؟

لاگ فایل ها خیلی ارزشمند فرد دی هستند برای مدیران شبکه یا مدیران سرورها در جستجوی اطلاعات شیوه عملکرد سرویس خیلی مفید هستند .

جستجو در لاک فایل های خیلی بزرگ سخت و کند خواهد بود. فایـل لاک بزرگ اندازه بسیار زیاد ی از دیسک شما را اشغال خواهد کرد همچنین فرآیند زیپ کردن آرشیو فایل های لاگ بزرگ زیاد گیر خواهد شد.
بر طبق مطالب بالا لازم است لاگ فایلها در مناسب بر طبق اندازه فایـل یا تعداد روز های ذخیره سازی آرشیو و یا حذف شوند.

لاگ روتیت (Log Rotate) چگونه کار می نماید ؟

سرویس logrotate در وقت های مقرری مثلاً بار در روز اجرا می شود :

/etc/cron.daily/logrotate

در صورتی که مایل هستید سرویس logrotate در زمان های زودتری مثلاً بصورت ساعتی اجرا شود لازم است که اجرای سرویس آن را بوسیله سرویس cron به ساعتی تبدیل بکنید :

/etc/cron.hourly

زمانی که سرویس logrotate اجرا می شود این سرویس لاگ فایل های تعریف شده را میخواند تا بر طبق “تعداد آرشیو هایی که می بایست نگهداری شود ” یا ” چه زمانی بایستی لاگ فعلی بسته شود” عملیات را به انجام میرساند.

فایل logrotate.conf

فایل تنظیمات logrotate در مسیر زیر قرار دارد :

/etc/logrotate.conf

این فایل حاوی پارامترهای پیش فرض سرویس logrotate است و با تذکر به توضیح ات داخل فایـل میتوانیم مقادیر پیش فرض را تغییر دهیم.
در این فایـل مسیر زیر محل تنظیمات logrotate مربوط بهبقیه برنامه ها را معین می نماید :

include /etc/logrotate.d

مسیر logrotate.d

میتوانید با مصرف از دستور زیر مسیر دایرکتوری logrotate.d را نگاه بکنید :

ls /etc/logrotate.d

بسته به اینکه چه پروگرام هایی روی سرور شما نصب شده اند این برنامه ها در دایرکتوری فوق یک فایـل در این مسیر جهت تنظیم اختصاصی logrotate خود این برنامه ایجاد می نماید .
در این مسیر لااقل یک فایل به نام syslog مشاهده می شود که لاگ های خود سیـستم را rotate خواهد کرد.

داخل فایل های تنظیم هر برنامه

فایل زیر را مشاهده بکنید این فایـل سری ی از فایل تنظیم logrotate مربوط به این پروگرام در logrotate.d است که از یک وب سرور Apache در سیستم علت Fedora برداشته شده است:

/var/log/httpd/*log

مسیر لاگ فایل ها در بالا معین شده است :

/var/log/httpd/*log

لاگ فایـل ها

لاگ فایل ها اکثرا ٌ بصورت فایل با مصرف از علامت معین میشوند ولی شما میتوانید مانند زیر چند لاگ فایل تعریف بکنید :

/var/foo/*.log /var/bar/log.txt
b b b
b b b

همچنین مانند مثال فوق میتوان یک فایل یا چند فایـل با علامت * یا log.* را معین بکنید .

پارامتر Rotate count چیست ؟

دستوری همموزیک زیر تعداد نگهداری لاگ فایـل ها را قبل از حذف فایـل لاگ معین می نماید :

rotate 4

در دستور فوق معین می شود که تعداد ۴ لاگ فایـل نگهداری شود.

پارامتر Rotation interval چیست ؟

دستوری وجود دازد که معین می نماید لاگ روتیشن جهت چه مدت لاگ را مراقبت نماید .

daily
weekly
monthly
yearly

پارامتر Size چیست ؟

میتوان دستور لاگ روتیشن را با توجه به اندازه فایـل لاگ معین کرد.

size 100k
size 100M
size 100G

مثالهای فوق دستور Log Rotate را بعد از بزرگ شدن فایل از اندازه ۱۰۰ کیلوبایت دومی بعد از بزرگ شدن از سایز ۱۰۰ مگابایت سومی بعد از بزرگ شدن از اندازه ۱۰۰ گیگابایت معین می نماید .

دقت شود که پارامتر size از درجه ارزش اجرای بالاتری نسبت بهبقیه پارامترها برخوردار است.

پارامتر Compression چیست ؟

پارامتر compress باعث بصورت فشرده سازی فایل لاگ بصورت gzip خواهد شد . با استفاده از دستورnocompress جمع و جور سازی کنسل خواهد شد.
در صورتی که مایل هستید بصورت فشرده سازی با تاخیر انجام شود لزومی به انجام سریع آن وجود ندارد از پارامتر delaycompress استفاده شود.یکی از کاربر دهای delaycomress در لاگ های سرویس آپاچی است.

پارامتر postrotate چیست ؟

postrotate اسکریپتی است که هر که logrotate انجام می شود اجرا می شود .
به عنوان مثال میتوان سرویس مورد نظر را در این اسکریپت Restart کرد :

postrotate
/usr/sbin/apachectl restart > /dev/null
endscript

بعد از دستورات postrotate با استفاده از endscript اسکریپت بسته می شود .

پارامتر sharedscripts چیست ؟

این پارامتر باعث می شود که در صورتی پروگرام مانند Apache چندین لاگ بود تنها یک بار اسکریپت تعریف شده در postrotate انجام شود ری استارت آپاچی مکرر انجام نشود.
بخشی از هارد رایانه سرور است که VPS شما می تواند تمالک نماید .
شرح ات بیشتر
به میزان انتقال داده ای که VPS شما در بازه ی معین انجام میدهد گفته می شود .
اگر این استفاده بیشتر از میزان مجاز باشد بعد از مطلع کردن شمتری فاکتور اضافه مصرف برای آنها صادر خواهد شد.
توضیح ات بیشتر
هر پروگرام ی که بر روی VPS نصب راه اندازی می شود و همچنین وب سایت هایی که بر روی آن راه اندازی میکنید از رم ستفاده میکنند، در صورتی که میزان رمی که در موقع ثبت سفارش برای ادامه ی کار VPS کافی نباشد میتوانید به هر اندازه که احتیاج داشته باشید سیسـتم خود را ارتقا دهید.
توضیح ات بیشتر
هر پروگرام ی که بر روی VPS نصب و راه اندازی می شود همين طور وب وب سایت هایی که بر روی آن راه اندازی میکنید از CPU ستفاده میکنند، در صورتی که CPU که در موقع ثبت سفارش برای ادامه ی کار VPS کافی نباشد میتوانید به هر اندازه که احتیاج داشته باشید سیسـتم خود را ارتقا دهید.

توضیح ات بیشتر
سرورهای ما بر روی دیتا سرور قدرتمند فن آوا قرار دارد.
شرح ات بیشتر
سرعت پورت اینترنت تحویلی به دیتا سنتر ۱ Gbاست که به صورت اشتراکی تقسیم می شد.
مجازی سازی بوسیله VMware ESXi انجام می گیرد.
آپتایم بسیار زیاد بالا در کلیه سرویس ها نزدیک به ۱۰۰%
سرورهای ما در داخل ایران می باشند که این مزیتی در جهت سرعت و دسترس ی محسوب می شود .

درباره نویسنده

مطالب مرتبط

نظر بدهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *