مراقبة ومعالجة الحالات الاستثنائية على الموقع
عند القيام بالتحسين لمحركات البحث، من المعتاد أن نقوم بفحص سجلات الدخول الخاصة بالمواقع بانتظام، وذلك للقيام ببعض التحليلات واتخاذ بعض القرارات، ولكن إذا كنت تدير مئات أو آلاف المواقع، هل ستقوم بالنظر إلى سجلات كل موقع بشكل منفرد؟
عند التعامل مع مجموعات مواقع بحجم كبير، عادة ما نقوم بمراقبة المواقع بناءً على أهميتها، على سبيل المثال، المواقع الرئيسية الهامة قد نقوم بمعالجتها وصيانتها كمواقع رئيسية، بينما قد يتم تحليل وصيانة بعض المواقع فقط في حالة حدوث مشكلة، وربما يتم ترك بعض المواقع لتتولد وتتعفن، وهذا يعتمد على استراتيجية المواقع عند بناء المجموعات، ولا يوجد قاعدة عامة.
بشكل عام، قد أقوم بمراقبة المجموعات بحثًا عن الحوادث، أي أنني أقوم بمعالجة الحوادث يدويًا في حال اكتشاف حالة غير طبيعية، وعادة ما لا أقوم بالنظر إليها في الأوقات العادية.
تعريف الحالات الاستثنائية
عند مراقبة أداء المواقع على الإنترنت، نحتاج إلى تحديد ما يعتبر حالات استثنائية. عمومًا، تشمل تعريفاتي للحالات الاستثنائية الرئيسية الخمسة التالية:
- عدد زيارات العنكبوت غير الطبيعي: مثل فقدان الترتيب بشكل مفاجئ مما يؤدي إلى توقف العنكبوت عن الزيارة، أو زيادة تواتر زيارة العنكبوت في حالة فقدان الترتيب.
- تدفق الموقع غير طبيعي: يجب أن لا يحدث تقلب كبير في تدفق مواقع الويب ، وفي حالة حدوث تقلب قد يكون هناك شخص يقوم بجمع المحتوى أو مهاجمة الموقع.
- الخطأ 404: الخطأ الذي يشير إلى عدم وجود الصفحة، يجب التعامل معه بسرعة.
- تدفق الصفحات الخاصة غير طبيعي: تدفق الصفحات الهامة بشكل غير طبيعي، مثل صفحات التوجيه للتسوق عبر الإنترنت، يمكن مقارنة مصدر التدفق بمعدل النجاح لمراقبة حالة التدفق.
- تدفق الكلمات الخاصة غير طبيعي: إذا كانت كمية البحث في السوق ومعدل نقرات الوصف ثابتة، فإن تدفق الكلمات الخاصة يعكس حالة تصنيف الكلمات.
طرق المراقبة
لمراقبة حالات الاستثناء المذكورة أعلاه، يمكننا إنشاء جدول بيانات لكل مؤشر باستخدام حروف ABCDE كرموز. ثم يمكن إنشاء مهمة تلقائية لحفظ بيانات كل موقع على شكل يومي في قاعدة البيانات.
في بيئة IIS ، يُوصى باستخدام أداة Logparser المقدمة من مايكروسوفت، هذه الأداة تسمح باستخدام تعليمات SQL لتحليل السجلات. يمكن العثور على معاني المعلمات الدقيقة من خلال محرك البحث.
كيفية الاستخدام الدقيقة
على سبيل المثال، يمكن استخدام الأمر التالي لمراقبة عدد الزيارات غير العادية من العناكب في حالة الاستثناء الأول.
Logparser -i:iisw3c ".حدد count(0) كم عدد الادخالات إلى A من xxx.log حيث cs(User-Agent) يشبه '%spider%'" -o:SQL -server: IP الخادم -driver:"خادم SQL" -database:اسم قاعدة البيانات -username:sa -password:***
معالجة الاستثناءات
عند إجراء المعالجة المسبقة، يجب مقارنة بيانات اليوم الحالي مع بيانات اليوم السابق للحصول على الفرق. قم بتحديد العتبة، وإذا تجاوزت العتبة تُعتبر استثناءً. على سبيل المثال، يمكن استخدام النسبة المئوية للحكم على الزيادات غير الطبيعية في التدفق، فإذا تجاوزت 30% تعتبر استثناءً؛ يمكن الحكم على استثناءات 404 مباشرةً من خلال الطرح.
أستخدم برنامجاً بـ C# لمعالجة الاستثناءات، مثلاً من خلال مقارنة أخر بيانات 404 لاكتشاف الاستثناءات. عندما يحدث استثناء، يقوم البرنامج بإرسال إشعار عبر البريد الإلكتروني ليسهل التعامل معه بسرعة.
اقتراحات أخرى
بالإضافة إلى الأساليب المذكورة أعلاه، يمكن استخدام Logparser لتقسيم السجلات ثم إرسالها عبر أمر FTP إلى عنوان FTP محدد، مما يتيح الاستفادة من البيانات مباشرةً دون الحاجة إلى عملية معالجة يدوية في كل مرة.
بشكل عام، مراقبة استثناءات الموقع هي وسيلة مهمة للحفاظ على أمان الموقع وتشغيله بشكل مستقر. الاكتشاف والتعامل مع الاستثناءات في الوقت المناسب يضمن تشغيل الموقع بشكل صحيح وتجربة مستخدم جيدة.