Create Gunicorn as a Service - Deploy Flask application on EC2 p.6
جدول المحتويات:
إن Nginx هو خادم HTTP مفتوح المصدر وعالي الأداء وخادم بروكسي عكسي مسؤول عن معالجة حمولة بعض أكبر المواقع على الإنترنت. عند إدارة خوادم الويب NGINX ، فإن إحدى المهام الأكثر شيوعًا التي تقوم بها هي التحقق من ملفات السجل.
تعد معرفة كيفية تكوين السجلات وقراءتها مفيدة للغاية عند استكشاف مشكلات الخادم أو التطبيق حيث أنها توفر معلومات مفصلة عن تصحيح الأخطاء.
يكتب Nginx سجلات أحداثه في نوعين من السجلات: سجلات الوصول وسجلات الأخطاء. سجلات الوصول تكتب معلومات حول طلبات العميل ، وتكتب سجلات الأخطاء معلومات حول مشكلات الخادم والتطبيق.
توضح هذه المقالة كيفية تكوين وقراءة سجلات الوصول والخطأ إلى Nginx.
تكوين سجل الوصول
عندما تتم معالجة طلب عميل ، يقوم Nginx بإنشاء حدث جديد في سجل الوصول. يحتوي كل سجل أحداث على طابع زمني ويتضمن معلومات متنوعة حول العميل والمورد المطلوب. يمكن أن توضح لك سجلات الوصول موقع الزائرين والصفحة التي يزورونها ومقدار الوقت الذي يقضونه على الصفحة وأكثر من ذلك بكثير.
يسمح لك التوجيه
log_format
بتعريف تنسيق الرسائل المسجلة. يمكّن التوجيه
access_log
ويقوم بتعيين موقع ملف السجل والتنسيق المستخدم.
بناء الجملة الأساسي من التوجيه
access_log
هو كما يلي:
access_log log_file log_format;
حيث
log_file
هو المسار الكامل لملف السجل ، و
log_format
هو التنسيق المستخدم بواسطة ملف السجل.
يمكن تمكين سجل الوصول إما في
http
أو
server
أو كتلة توجيهات
location
.
بشكل افتراضي ، يتم تمكين سجل الوصول على مستوى العالم في التوجيه
http
داخل ملف التكوين Nginx الرئيسي.
http {… access_log /var/log/nginx/access.log;… }
لتحسين الصيانة ، يوصى بتعيين ملف سجل وصول منفصل لكل كتلة خادم.
access_log
التوجيه
access_log
المحدد في توجيه
server
المجموعة الواحدة في التوجيه
http
(المستوى الأعلى).
http {… access_log /var/log/nginx/access.log;… server { server_name domain.com access_log /var/log/nginx/domain.access.log;… } }
إذا لم يتم تحديد تنسيق سجل ، يستخدم Nginx التنسيق المدمج المحدد مسبقًا والذي يشبه هذا:
log_format combined '$remote_addr - $remote_user ' '"$request" $status $body_bytes_sent ' '"$http_referer" "$http_user_agent"';
لتغيير تنسيق التسجيل إما تجاوز الإعداد الافتراضي أو حدد إعدادًا جديدًا. على سبيل المثال ، لتعريف تنسيق تسجيل جديد باسم الرئيسي والذي سيمدد التنسيق المدمج مع القيمة التي تظهر رأس
X-Forwarded-For
أضف التعريف التالي في التوجيه
http
أو
server
:
log_format custom '$remote_addr - $remote_user "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"';
لاستخدام التنسيق الجديد ، حدد اسمه بعد ملف السجل كما هو موضح أدناه:
access_log /var/log/nginx/access.log custom;
بينما يوفر سجل الوصول معلومات مفيدة للغاية. يستغرق مساحة على القرص وقد يؤثر على أداء الخادم. إذا كان الخادم الخاص بك منخفض الموارد وكان لديك موقع ويب مشغول ، فقد تحتاج إلى تعطيل سجل الوصول. للقيام بذلك ، قم بتعيين قيمة التوجيه
access_log
إلى
off
:
تكوين سجل الأخطاء
Nginx يكتب رسائل حول التطبيق وأخطاء الخادم العامة في ملف سجل الأخطاء. إذا كنت تواجه أخطاء في تطبيق الويب الخاص بك ، فإن سجل الأخطاء هو أول مكان تبدأ فيه مشكلات استكشاف الأخطاء وإصلاحها.
يمكّن توجيه
error_log
ويقوم بتعيين الموقع ومستوى شدة سجل الأخطاء. يستغرق النموذج التالي ويمكن تعيينه ضمن
http
أو
server
أو block site:
error_log log_file log_level
تحدد المعلمة
log_level
مستوى التسجيل. فيما يلي المستويات المدرجة حسب شدتها (من الأقل إلى الأعلى):
-
debug- تصحيح الرسائل.info- رسائل إعلامية.notice- الإشعارات.warn- تحذيرات.error- أخطاء أثناء معالجة الطلب.crit- القضايا الحرجة. يتطلب اتخاذ إجراء سريع.alert- تنبيهات. يجب اتخاذ الإجراءات على الفور. الطوارئ - حالة الطوارئ. النظام في حالة غير صالحة للاستعمال.
يتضمن كل مستوى سجل المستويات العليا. على سبيل المثال ، إذا قمت بتعيين مستوى السجل
warn
، فسيقوم Nginx أيضًا بتسجيل رسائل
error
،
crit
،
alert
،
emerg
.
عندما لا يتم تحديد المعلمة
log_level
يتم
log_level
error
.
بشكل افتراضي ، يتم تعريف التوجيه
error_log
في التوجيه
http
داخل ملف nginx.conf الرئيسي:
http {… error_log /var/log/nginx/error.log;… }
كما هو الحال مع سجلات الوصول ، يوصى بتعيين ملف سجل خطأ منفصل لكل كتلة خادم ، والذي يتجاوز الإعداد الموروث من المستويات العليا.
على سبيل المثال ، لتعيين سجل الأخطاء domain.com '
warn
قد تستخدم:
http {… error_log /var/log/nginx/error.log;… server { server_name domain.com error_log /var/log/nginx/domain.error.log warn;… } }
كلما قمت بتعديل ملف التكوين ، يجب عليك إعادة تشغيل خدمة Nginx لتصبح التغييرات نافذة المفعول.
موقع ملفات السجل
بشكل افتراضي في معظم توزيعات Linux ، مثل Ubuntu و CentOS و Debian ، توجد سجلات الوصول والخطأ في دليل
/var/log/nginx
.
قراءة وفهم ملفات سجل Nginx
يمكنك فتح ملفات السجل وتحليلها باستخدام أوامر قياسية مثل
cat
و
less
و
grep
و
cut
و
awk
وما إلى ذلك.
فيما يلي مثال لسجل من ملف سجل الوصول يستخدم تنسيق سجل Nginx المدمج الافتراضي:
192.168.33.1 - - "GET / HTTP/1.1" 200 396 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.120 Safari/537.36"
لنفصل ما يعنيه كل حقل في السجل:
-
$remote_addr-192.168.33.1- عنوان IP للعميل الذي يقوم بطلب الطلب.$remote_user--- HTTP Authenticated User. عندما لا يتم تعيين اسم المستخدم ، يظهر هذا الحقل-. -- وقت الخادم المحلي."$request"-"GET /- نوع الطلب والمسار والبروتوكول.$status-200- رمز استجابة الخادم.$body_bytes_sent-396- حجم استجابة الخادم بالبايت."$http_referer"-"-"- عنوان URL للإحالة."$http_user_agent"-Mozilla/5.0…- وكيل المستخدم للعميل (متصفح الويب).
استخدم الأمر
tail
لمشاهدة ملف السجل في الوقت الفعلي:
استنتاج
توفر لك ملفات السجل معلومات مفيدة حول مشكلات الخادم وكيفية تفاعل الزوار مع موقع الويب الخاص بك.
يسمح لك Nginx بتكوين سجلات الوصول والخطأ وفقًا لاحتياجاتك.
إنجن إكسFIX: تكوين جنباً إلى جنب خطأ غير صحيح ، أثناء فتح برنامج Windows Live Messenger
أثناء فتح Messenger ، قد تحصل على رسالة الخطأ "الوصف: فشل التطبيق في بدء التشغيل لأن التهيئة جنبًا إلى جنب غير صحيحة. الرجاء مراجعة سجل أحداث التطبيق للحصول على مزيد من التفاصيل. "
تسجيل الدخول إلى Gmail: تسجيل الدخول وتسجيل الدخول إلى Gmail الآمن
نصائح مفيدة لتسجيل الدخول إلى Gmail حول كيفية الاشتراك أو تسجيل الدخول إلى Gmail ، حل المشكلة المشاكل والوصول إلى حسابات Gmail متعددة. اتبع تلميحات الأمان هذه لتأمينها.
Google Plus تسجيل الدخول ، تسجيل الدخول وتسجيل الدخول نصائح الأمان
تسجيل الدخول إلى Google Plus ، تنهد ، نصائح تسجيل الدخول التي يمكنك استخدامها لتحسين الأمن والخصوصية. تعرف على كيفية الحفاظ على الأمان والأمان عبر الإنترنت على حسابك في Google Plus.







