كيفية منع سجلات Home Assistant من ملء قرص النظام

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

امنع سجلات Home Assistant من ملء القرص عبر تحديد الملف الذي ينمو بالضبط أولًا، وتصحيح الحدث المتكرر، وتطبيق سياسة الاحتفاظ في الطبقة المسؤولة عن ذلك السجل.

على خادم منزلي صغير، يمكن لسجلات Home Assistant Core وسجلات Docker وسجلات Supervisor أو الإضافات وسجل النظام المضيف أن تستهلك قرص النظام نفسه، مع حاجة كل منها إلى إصلاحات مختلفة. قِس النمو خلال فترة قصيرة ومضبوطة، واحتفظ بأدلة كافية لتحديد الجهة التي تكتب السجل، واستخدم حدودًا قابلة للتراجع، وأوقف عمليات الكتابة غير الضرورية إذا كانت المساحة المتبقية منخفضة جدًا لإعادة تشغيل آمنة أو لإنشاء نسخة احتياطية.

حدّد السجل الذي يستهلك المساحة

سجّل إجمالي المساحة الحرة، ثم اعرض أكبر الملفات والمجلدات على نظام الملفات المتأثر من دون حذف أي شيء. قارن الأحجام مرة أخرى بعد خمس إلى عشر دقائق أثناء تشغيل Home Assistant بصورة طبيعية. فالملف الذي يتغير حجمه أكثر فائدة من قائمة ثابتة بالملفات القديمة الكبيرة.

تُظهر حالات Home Assistant أن نفاد مساحة القرص قد يحدث في طبقات مختلفة، بما في ذلك سجلات النظام وليس قاعدة بيانات Recorder فقط. فقد عزا نقاش حُلَّت مشكلته النمو إلى سجل systemd، لذا فإن التمييز الأول هو أي مجلد يستمر في النمو، وليس ما إذا كان Home Assistant يبدو مشغولًا.

إذا نما أحد سجلات Core، فافحص المكوّن والرسالة المتكررين فيه. وإذا نمت سجلات Docker بصيغة JSON، فافحص برنامج تشغيل السجلات للحاوية. وإذا نما السجل، فافحص الخدمة التي تُصدره. وإذا كانت المساحة الحرة منخفضة بصورة حرجة، فأوقف الحاوية غير الضرورية الأكثر إصدارًا للرسائل أو Home Assistant نفسه قبل أن تجعل عمليات الكتابة الإضافية الاسترداد أصعب.

أصلح الأخطاء المتكررة قبل تقليل مستوى الرؤية

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

وثّقت إحدى مشكلات Home Assistant Core خطأً في Tradfri تسبب في تجاوز سجل حجمه 10 غيغابايت واستنفاد قرص النظام. وهذا مثال مرتبط بإصدار محدد على تكامل واحد يغمر السجل؛ وهو يدعم عزل الجهة المُصدرة، لا افتراض أن Tradfri أو تدوير السجلات هو السبب دائمًا.

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

اضبط سياسة الاحتفاظ في الطبقة المسؤولة عن السجل

اضبط سياسة محددة بحد أقصى لسجل النظام المضيف، وبرنامج تشغيل سجلات Docker، والوكيل العكسي، والإضافات الأخرى كلٌّ على حدة. فمستوى تسجيل Core لا يحدد حدًا أقصى لتخزين سجل systemd، كما أن خيار الحجم في Docker لا يدوّر ملفًا يُكتب مباشرةً داخل مجلد إعدادات موصول.

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

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

-15% OFF

تحقق من بقاء النمو ضمن حدود ثابتة أثناء المحفّز الأصلي

أعد إنتاج الحدث الذي تسبب في تدفق السجلات، مثل انقطاع جهاز، أو إعادة محاولة تكامل، أو نسخة احتياطية، أو انقطاع الشبكة. راقب حجم الملف نفسه، ومعدل الرسائل، والمساحة الحرة، وصحة الخدمة، واستجابة الأتمتة لفترة أطول من فترة النمو السابقة.

تتضمن النتيجة الناجحة استقرار حجم السجل أو تدويره، وعدم فقدان بيانات التشخيص المطلوبة، وكتابة السجل التاريخي بصورة طبيعية، وتوفر مساحة حرة كافية للنسخة الاحتياطية والتحديث التاليين. أعد تشغيل المضيف مرة واحدة وكرّر المحفّز للتأكد من عمل الحدود بعد إعادة إنشاء الخدمة.

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

الدعم والنصائح

المزيد للقراءة

Get More Builds Like This

Stay in the Loop

Get updates from Zima - new products, exclusive deals, and real builds from the community.

Stay in the Loop preferences

We respect your inbox. Unsubscribe anytime.