أحاول حاليًا تصحيح بعض الاستعلامات البطيئة التي تحدث فقط في البيئات التي تعمل في وضع الإنتاج. لاحظت أن مستوى السجل مُبرمج بشكل ثابت في وضع الإنتاج (مرجع الكود) دون وجود طريقة لتكوينه مباشرة. أود تغيير مستوى السجل هذا إلى تصحيح الأخطاء (على الأقل مؤقتًا) حتى أتمكن من رؤية المزيد من المعلومات؛ هل هناك طريقة لتحقيق ذلك؟
لقد جربت بعض الحلول البديلة غير القياسية التي تضمنت تغيير مستوى السجل أثناء وقت التشغيل باستخدام وحدة تحكم Rails، ولكن لم تسفر أي من هذه الحلول عن ظهور استعلامات قاعدة البيانات في سجلات تصحيح الأخطاء (إذا قمت يدويًا بتسجيل الأخطاء باستخدام Rails.logger.debug في وحدة تحكم Rails، فقد ظهرت بعد الحلول البديلة، مع ذلك).
شكرا لك!
ملاحظة: فقط لتهدئة أي مخاوف محتملة بشأن تعليقي أعلاه حول المشكلات التي تحدث فقط في بيئات الإنتاج، أنا أستخدم Discourse بطريقة غير قياسية إلى حد ما تتضمن عددًا كبيرًا من الفئات؛ المشكلات التي أواجهها على الأرجح لا يواجهها أي مثيل آخر لـ Discourse.
في وضع الإنتاج، فإنه يجمع الأخطاء المتشابهة عن طريق بصمات تتبع الاستدعاءات، ويستمع إلى التحذيرات/الأخطاء والرسائل القاتلة. الهدف هو عرض قائمة بمشاكل التطبيق المفتوحة التي يمكن حلها بطريقة ما.
في وضع التطوير، فإنه يوفر تدفقًا كاملاً لجميع السجلات التي ينتجها Rails. (تصحيح الأخطاء وما فوق). هذا له مزايا كبيرة مقارنة بوحدة التحكم حيث يكون لديك وصول صحيح إلى تتبع الاستدعاءات لكل سطر سجل.
شكرا لك.
هذا منطقي للحالة السائدة.
ومع ذلك، يبدو هذا مقيدًا بشكل غير معقول ويجب أن يكون قابلاً للتكوين لظروف خاصة؟
وهذا يشمل الأوقات التي لديك فيها حالات قصوى في بيئة الإنتاج ترغب في التحقيق فيها.