كيفية اختبار بيان تقييم بايثون في تكوين ini لتطبيق UWSGI؟

StackOverflow https://stackoverflow.com//questions/21051250

  •  22-12-2019
  •  | 
  •  

سؤال

بقدر ما أستطيع أن أقول، بيان التقييم الخاص بي ضمن تكوين تطبيق USWGI لا يعمل/ينفذ، لكن لا يمكنني معرفة كيفية اختبار ذلك.

  • نظام التشغيل: دبيان جنو/لينكس 7.1 (أزيز)
  • أووسجي: 1.2.3-ديبيان
  • بايثون: 2.7

أنا في الواقع أحاول إعداد مراقبة تطبيق Newrelic باستخدام ما يلي في ملفي app.ini الملف (باستخدام طريقة تركيب التطبيق لتطبيق جانغو):

[uwsgi]
chdir = /home/app-user/myapp/bin
wsgi-file = django.wsgi
socket = 127.0.0.1:3031
pythonpath = /home/app-user/myapp/src
logto = /var/log/uwsgi/app/myapp.log
enable-threads = true
single-interpreter = true
eval = import newrelic.agent, django.wsgi; newrelic.agent.initialize('/path/to/newrelic.ini'); application = newrelic.agent.wsgi_application()(django.wsgi.application)

لي newrelic.ini أسيوط:

log_file = /tmp/newrelic-python-agent.log

بعد إعادة التشغيل وتقديم بعض الطلبات إلى التطبيق (الذي يعمل كالمعتاد)، لم يتم حتى إنشاء ملف السجل الجديد، ولا يوجد شيء في سجل تطبيق uwsgi أو ال سجل جانغو, ، لذلك لا أعرف كيف أخبرك بما يحدث في التقييم.

لقد حاولت وضع أشياء غير صحيحة من الناحية النحوية في التقييم، ولكن لا تزال إعادة تشغيل uwsgi ناجحة.

هل هناك طريقة للتحقق من صحة ما هو موجود في بيان التقييم كما تم تنفيذه بواسطة عملية uwsgi؟

هل كانت مفيدة؟

المحلول

لقد تأخرت على الحفلة، لكن مشكلتك كانت أنك حضرت wsgi-file الخيار الذي جعل eval عديم الفائدة.(الشيء نفسه ينطبق على module الخيار - هذه هي الحالة التي كانت لدي.)

لذا، لجعل uWSGI يغلف أي تطبيق WSGI ببرنامج وسيط، كان عليك فقط إزالة الخيارات المخالفة.أي.:

; DON'T USE THIS: wsgi-file=myproject/wsgi.py
; NEITHER THIS: module=myproject.wsgi
eval=import myproject.wsgi, myfancymw; application = myfancymw.wrap(myproject.wsgi.application)

نصائح أخرى

يبدو أن هناك الكثير يحدث هنا.قد ترغب في فتح تذكرة مع newrelic في

https://support.newrelic.com حتى يتمكنوا من التحقيق في ما يحدث في الإعداد الخاص بك.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top