चलें कहते हैं कि मैं इस स्वरूपण स्ट्रिंग की तरह प्रवेश करना चाहते हैं:django लॉगिंग प्रति अनुरोध वैश्विक स्तर पर संदर्भ सेट?
logging.error('Error fetching information', extra = { 'user_id': 22 })
इस के लिए संदेशों प्रवेश करने के लिए वर्तमान उपयोगकर्ता आईडी जोड़ देगा:
%(levelname)s %(asctime)s %(module)s %(funcName)s %(message)s %(user_id)
यह प्रवेश करने कमांड के इस प्रकार का उपयोग किया जा सकता है वर्तमान अनुरोध
लेकिन अतिरिक्त dict हर प्रवेश कॉल में जोड़ा जाना चाहिए।
क्या इस संदर्भ को django (जैसे मिडलवेयर, या दृश्य के इंडेक्स फ़ंक्शन) में एक सामान्य फ़ंक्शन में जोड़ने का कोई अच्छा तरीका है, ताकि उपयोगकर्ता आईडी के साथ अतिरिक्त शब्दकोश सेट हो और वर्तमान में सभी लॉगिंग कॉल हो जाएं अनुरोध वर्तमान उपयोगकर्ता को भी लॉग इन करें।
क्यों 'mawimawi' के जवाब स्वीकार्य नहीं है? क्या यह थ्रेड-स्थानीय उपयोग, या कुछ और वजह से है? –
विनय साजिप, कुछ प्रतिनिधि अंक अकेले मर जाएंगे। इस तरह यह stackoverflow पर काम करता है। – mawimawi
@VinaySajip, हाँ, धागे की स्थानीय और एक अतिरिक्त मिडलवेयर के उपयोग से बचने की कोशिश। यदि लॉगिंग क्लास को विस्तारित करने का कोई तरीका संभव है, तो यह बहुत अच्छा होगा। – DhruvPathak