استخدام Logrotate لإدارة ملفات السجل

المقدمة

Logrotate هي أداة Linux تعمل على تبسيط إدارة ملفات السجل. عادةً ما يتم تشغيله مرة واحدة يوميًا عبر مهمة cron ، ويدير السجلات بناءً على القواعد / الإعدادات المخصصة من ملف التكوين الخاص به.

تتضمن بعض إعداداته المفيدة التدوير التلقائي والضغط والإزالة وإرسال ملفات السجل بالبريد.

التركيب

تأتي معظم أنظمة Linux مثبتة بشكل افتراضي على Logrotate. تحقق مما إذا كنت قد قمت بتثبيته على مثيل Vultr الخاص بك عن طريق إصدار logrotateالأمر. سترى مخرجات مع إصدار Logrotate الذي يعمل عليه الخادم الخاص بك.

إذا لم يكن مثبتًا لديك ، فقم بإجراء الخطوات أدناه لمتابعة التثبيت.

على أنظمة Debian / Ubuntu:

sudo apt-get update
sudo apt-get install logrotate

على أنظمة Redhat / CentOS:

sudo yum update
sudo yum install logrotate

فهم Logrotate

الأجزاء المتحركة التي تجعل تشغيل logrotate هي:

  • الأداة الفعلية logrotate.

  • يقع ملف التكوين لوغروت في /etc/logrotate.conf. يحتوي هذا الملف على التكوين لجميع ملفات السجل التي يديرها Logrotate.

  • مهمة cron يومية /etc/cron.daily/logrotateتُصدر أمر logrotate ليتم تشغيله بناءً على الإعدادات في ملف التكوين الخاص به. إذا لم تكن وظيفة cron هذه موجودة على نظامك ، فأنشئها وأضف مقتطف الرمز أدناه إليها.

    #!/bin/sh
    /usr/sbin/logrotate /etc/logrotate.conf
    

المزيد عن التكوين

إذا أخذت نظرة خاطفة في الداخل /etc/logrotate.conf، سترى أن الخط include /etc/logrotate.dفيه. ما يفعله هذا الخط هو إخبار Logrotate بالنظر داخل /etc/logrotate.dالدليل وتشغيل كل ملف تكوين فيه. هذا الدليل عادة حيث ستضيف التطبيقات المثبتة على نظام لينكس الخاص بك تكوينات logrotate الخاصة بهم. على سبيل المثال ، سيقوم Apache2 عادةً بإنشاء /etc/logrotate.d/apacheملف تكوين عند التثبيت.

إدارة السجلات

لاختبار Logrotate ، سنقوم بما يلي:

  • إنشاء ملف سجل اختبار جديد مع 1 ميغا بايت أو بيانات عشوائية:

    sudo base64 /dev/urandom | head -c 1000000 > /tmp/testfile.log
    
  • قم بإنشاء تكوين Logrotate جديد عن طريق التشغيل sudo nano /etc/logrotate.d/testlog. انسخ المقتطف التالي إلى ملف فارغ واضغط على Ctrl + X للحفظ والخروج.

    /tmp/testfile.log {
        size 1k
        copytruncate
        missingok
        rotate 5
    }
    

توجه خيارات التكوين في المقتطف أعلاه Logrotate إلى:

  • size 1k: قم بتدوير ملف السجل إذا كان الحجم أكبر من أو يساوي 1 ك.
  • missingok: تجاهل رسائل الخطأ في حالة testfile.logعدم وجودها.
  • copytruncate: قم بإنشاء نسخة من ملف السجل الحالي ثم اقتطاعها. يكون هذا مفيدًا عندما يتعذر على التطبيق إغلاق ملف السجل الخاص به لأنه يلحق به باستمرار.
  • rotate 5: تحديد عدد عمليات تدوير ملفات السجل إلى 5. سيؤدي هذا إلى حذف الإصدارات القديمة من ملفات السجل التي تزيد عن 5 أيام.

ملاحظة: يمكنك رؤية جميع خيارات التكوين لـ logrotate هنا .

  • قم بتشغيل الأمر Logrotate يدويًا:

    sudo logrotate /etc/logrotate.conf
    

    بعد تشغيل الأمر أعلاه ، قم بسرد جميع الملفات في دليل tmp ls -l /tmpللتأكد من تدوير testfile.log بالفعل. من المفترض أن ترى قائمة مشابهة لما يلي والتي testfile.logتم تدويرها بالفعل. سيستمر هذا كل يوم والاحتفاظ بأحدث 5 نسخ.

    [root@vultr ~]# ls -l /tmp
    -rw-r--r--  1 root root       0 Nov 14 23:31 testfile.log
    -rw-r--r--  1 root root 1000000 Nov 14 23:30 testfile.log-20141114
    -rw-r--r--  1 root root     634 Nov 10 00:23 vultr_ipv6
    -rw-------. 1 root root       0 Oct 15 20:44 yum.log
    

استنتاج

يمكن أن تخلق السجلات مشاكل على الخادم بسرعة عن طريق زيادة حجمها والتسبب في مشاكل في مساحة القرص. تعد إدارة السجلات أمرًا بالغ الأهمية لأي نظام ، ولكن من الأفضل أتمتة هذه الإدارة. يجعل Logrotate تدوير السجلات وأرشفتها وحذفها أمرًا سهلاً.

كتبه لامي أدابونيان



Leave a Comment

نظرة ثاقبة على 26 أسلوبًا لتحليل البيانات الضخمة: الجزء الأول

نظرة ثاقبة على 26 أسلوبًا لتحليل البيانات الضخمة: الجزء الأول

نظرة ثاقبة على 26 أسلوبًا لتحليل البيانات الضخمة: الجزء الأول

6 أشياء شديدة الجنون حول نينتندو سويتش

6 أشياء شديدة الجنون حول نينتندو سويتش

يعرف الكثير منكم أن Switch سيصدر في مارس 2017 وميزاته الجديدة. بالنسبة لأولئك الذين لا يعرفون ، قمنا بإعداد قائمة بالميزات التي تجعل "التبديل" "أداة لا غنى عنها".

وعود التكنولوجيا التي لم يتم الوفاء بها بعد

وعود التكنولوجيا التي لم يتم الوفاء بها بعد

هل تنتظر عمالقة التكنولوجيا للوفاء بوعودهم؟ تحقق من ما تبقى دون تسليم.

وظائف طبقات معمارية مرجعية للبيانات الضخمة

وظائف طبقات معمارية مرجعية للبيانات الضخمة

اقرأ المدونة لمعرفة الطبقات المختلفة في بنية البيانات الضخمة ووظائفها بأبسط طريقة.

كيف يمكن للذكاء الاصطناعي نقل أتمتة العمليات إلى المستوى التالي؟

كيف يمكن للذكاء الاصطناعي نقل أتمتة العمليات إلى المستوى التالي؟

اقرأ هذا لمعرفة مدى انتشار الذكاء الاصطناعي بين الشركات الصغيرة وكيف أنه يزيد من احتمالات نموها ومنح منافسيها القدرة على التفوق.

CAPTCHA: ما هي المدة التي يمكن أن تظل تقنية قابلة للتطبيق للتميز بين الإنسان والذكاء الاصطناعي؟

CAPTCHA: ما هي المدة التي يمكن أن تظل تقنية قابلة للتطبيق للتميز بين الإنسان والذكاء الاصطناعي؟

لقد أصبح حل CAPTCHA صعبًا جدًا على المستخدمين في السنوات القليلة الماضية. هل ستكون قادرة على أن تظل فعالة في اكتشاف البريد العشوائي والروبوتات في المستقبل القريب؟

التفرد التكنولوجي: مستقبل بعيد للحضارة الإنسانية؟

التفرد التكنولوجي: مستقبل بعيد للحضارة الإنسانية؟

مع تطور العلم بمعدل سريع ، واستلام الكثير من جهودنا ، تزداد أيضًا مخاطر تعريض أنفسنا إلى تفرد غير قابل للتفسير. اقرأ ، ماذا يمكن أن يعني التفرد بالنسبة لنا.

التطبيب عن بعد والرعاية الصحية عن بعد: المستقبل هنا

التطبيب عن بعد والرعاية الصحية عن بعد: المستقبل هنا

ما هو التطبيب عن بعد والرعاية الصحية عن بعد وأثره على الأجيال القادمة؟ هل هو مكان جيد أم لا في حالة الوباء؟ اقرأ المدونة لتجد طريقة عرض!

هل تساءلت يومًا كيف يربح المتسللون الأموال؟

هل تساءلت يومًا كيف يربح المتسللون الأموال؟

ربما سمعت أن المتسللين يكسبون الكثير من المال ، لكن هل تساءلت يومًا كيف يجنون هذا النوع من المال؟ دعنا نناقش.

يتسبب التحديث الإضافي لنظام macOS Catalina 10.15.4 في حدوث مشكلات أكثر من حلها

يتسبب التحديث الإضافي لنظام macOS Catalina 10.15.4 في حدوث مشكلات أكثر من حلها

أصدرت Apple مؤخرًا macOS Catalina 10.15.4 تحديثًا تكميليًا لإصلاح المشكلات ولكن يبدو أن التحديث يتسبب في المزيد من المشكلات التي تؤدي إلى إنشاء أجهزة macOS. قراءة هذه المادة لمعرفة المزيد