تسجيل جميع استعلامات SQL في Django
في Django، يمكن أن يوفر التقاط استعلامات SQL التي ينفذها تطبيقك رؤى لا تقدر بثمن لتصحيح الأخطاء وتحليل الأداء ، والمراقبة الأمنية. إليك كيفية تحقيق ذلك:لتسجيل جميع استعلامات SQL، بما في ذلك تلك الواردة من موقع الإدارة، قم بتعديل تكوين LOGGING في ملف settings.py الخاص بك. أضف المقتطف التالي للدمج مع حقل LOGGING الموجود:LOGGING = { "الإصدار": 1، "المرشحات": { 'require_debug_true': { '()': 'django.utils.log.RequireDebugTrue', } }, "المعالجون": { "وحدة التحكم": { "المستوى": "تصحيح الأخطاء"، "المرشحات": ["require_debug_true"]، 'الفئة': 'logging.StreamHandler'، } }, "المسجلون": { 'جانغو.db.backends': { "المستوى": "تصحيح الأخطاء"، "المعالجات": ["وحدة التحكم"]، } }
LOGGING = { 'version': 1, 'filters': { 'require_debug_true': { '()': 'django.utils.log.RequireDebugTrue', } }, 'handlers': { 'console': { 'level': 'DEBUG', 'filters': ['require_debug_true'], 'class': 'logging.StreamHandler', } }, 'loggers': { 'django.db.backends': { 'level': 'DEBUG', 'handlers': ['console'], } } }سيقوم هذا التكوين بتوجيه جميع استعلامات SQL إلى وحدة التحكم عند تعيين علامة DEBUG على True في settings.py. إذا كنت تفضل تسجيل الاستعلامات إلى ملف، فيمكنك استبدال معالج "وحدة التحكم" بـ "FileHandler" وتحديد المسار إلى ملف السجل.
على سبيل المثال، لتسجيل الاستعلامات إلى ملف مسمى all-sql.log، استخدم المعالج التالي:'handlers': { 'all_sql_file': { "المستوى": "تصحيح الأخطاء"، "المرشحات": ["require_debug_true"]، 'الفئة': 'logging.FileHandler'، "اسم الملف": "all-sql.log"، }
LOGGING = { 'version': 1, 'filters': { 'require_debug_true': { '()': 'django.utils.log.RequireDebugTrue', } }, 'handlers': { 'console': { 'level': 'DEBUG', 'filters': ['require_debug_true'], 'class': 'logging.StreamHandler', } }, 'loggers': { 'django.db.backends': { 'level': 'DEBUG', 'handlers': ['console'], } } }تأكد من إعادة تشغيل خادم Django بعد إجراء هذه التغييرات للتأكد من تفعيل تكوين التسجيل الجديد.
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3