2008-12-06 13 views
78

के लिए कोई हैंडलर नहीं मिल सका, ठीक है, यह क्या है, और यह Win2003 सर्वर पर क्यों होता है, लेकिन WinXP पर नहीं।पायथन - लॉगर "ओपनजीएल.एरर"

यह मेरे आवेदन को बिल्कुल प्रभावित नहीं करता है, लेकिन जब मैं एप्लिकेशन बंद करता हूं तो मुझे यह त्रुटि संदेश मिलता है। और यह कष्टप्रद है (क्योंकि त्रुटियों के संदेश होना चाहिए)।

मैं ग्राफिक्स सामान करने के लिए pyOpenGl और wxPython का उपयोग कर रहा हूं। दुर्भाग्यवश, मैं एक सी # प्रोग्रामर हूं जिसने इस पायथन ऐप को ले लिया है, और मुझे इसे करने के लिए पायथन सीखना पड़ा।

मैं कोड और संस्करण संख्या आदि की आपूर्ति कर सकता हूं, लेकिन मैं अभी भी तकनीकी सामान सीख रहा हूं, इसलिए किसी भी मदद की सराहना की जाएगी। ओपन की तरह Win2003 पर कुछ त्रुटि रिपोर्ट करने के प्रयास कर रहा है

अजगर 2.5, wxPython और pyOpenGL

+1

मुझे लगता है कि "कोई हैंडलर नहीं मिला" एक कैननिकल मुद्दा है जो केवल पायथन की ओपनजीएल लाइब्रेरी के लिए नहीं बल्कि कई पायथन पुस्तकालयों के लिए होता है। अभी यद्यपि जब मैं "पायथन" लॉगर के लिए कोई हैंडलर नहीं पाया जा सकता है "मुझे लगता है कि यह प्रश्न एक कैननिकल प्रश्न/समाधान के सबसे नज़दीकी प्रतीत होता है। –

+0

अगर कोई यहां इस https://stackoverflow.com/q/44188270/1581226 – qwerty

उत्तर

191

लग रहा है, फिर भी तुम कहाँ करने के लिए उत्पादन की जानकारी प्रवेश करने के लिए अपने सिस्टम कॉन्फ़िगर नहीं किया गया है।

आप अपने प्रोग्राम की शुरुआत में निम्नलिखित जोड़ सकते हैं और आपको stderr में त्रुटि का विवरण दिखाई देगा। logging मॉड्यूल पर

import logging 
logging.basicConfig() 

चेकआउट प्रलेखन अधिक config जानकारी पाने के लिए, धारणात्मक यह log4j के समान है।

+1

की तलाश में आया तो यह वास्तव में सहायक था। मैं मुद्दों को ट्रैक न करने के लिए, मेरे आवेदन से त्रुटि पाठ प्राप्त करने में सक्षम था। –

2

उपरोक्त लॉगिंग जोड़ने के बाद, मैं यह देखने में सक्षम था कि समस्या TConstants क्लास को खोने के कारण हुई थी, जिसे मैं py2exe setup.py फ़ाइल में छोड़ रहा था।

बहिष्कृत सूची से "Tconstants" को हटाने के बाद, मुझे अब कोई समस्या नहीं थी।

3

proper way इस संदेश से छुटकारा पाने के लिए अपनी लाइब्रेरी (ओपनजीएल) के रूट लेवल लॉगर के लिए NullHandler को कॉन्फ़िगर करना है।

+0

डाउनवॉट क्यों हैं? –

+4

मुझे लगता है कि आप नीचे मतदान कर रहे थे क्योंकि नलहैंडलर के साथ लॉग संदेश को अनदेखा करना शायद ही सही काम है। रिपोर्ट किया गया संदेश अक्सर एक संकेत है कि लॉगर को उस बिंदु पर कॉन्फ़िगर नहीं किया गया था जब इसे पहले से कॉन्फ़िगर किया जाना चाहिए था और आप उस घटक के साथ संभावित समस्या को अनदेखा कर रहे हैं जो कुछ लॉग करने का प्रयास कर रहा था। कुछ मामलों में नलहैंडलर का उपयोग करना सही काम हो सकता है, लेकिन शायद ही कभी आईएमओ। –

+0

@MoisesSilva लाइब्रेरी के लिए NullHandler एक जरूरी है। यह लॉगिंग बंद नहीं करता है - यह सिर्फ इस पर ठीक से नियंत्रित नियंत्रण की अनुमति देता है 'reset.css' –