अपवाद कभी-कभी होते हैं। जब वे करते हैं, तो वे लॉग होते हैं और बाद में विश्लेषण करते हैं। लॉग में स्पष्ट रूप से स्टैक-ट्रेस और अन्य वैश्विक जानकारी शामिल है, लेकिन अक्सर महत्वपूर्ण संदर्भ गुम है। मैं पोस्ट-मॉर्टम डीबगिंग की सुविधा के लिए इस अतिरिक्त जानकारी के साथ अपवाद को एनोटेट करना चाहता हूं।उन्हें पकड़ने के बिना अतिरिक्त जानकारी के साथ अपवादों को एनोटेट करना
- मैं
try{...}catch{... throw;}
नहीं करना चाहते क्योंकि यह एक अपवाद को पकड़ने के रूप में गिना और उस (कठिन डिबगिंग विकास के दौरान बनाता रहा रोकने के लिए एप्लिकेशन और डीबगर जब मूल अपवाद फेंक दिया है प्रतिक्रिया करने के लिए, और नहीं करना चाहते हैं जब बाहरी अनजान अपवाद है)। दुर्भाग्यवश बहुत सारे झूठे सकारात्मक होने के कारण पहली बार अपवाद हैंडलर कामकाज नहीं कर रहे हैं। - मैं सामान्य, असाधारण मामले में अत्यधिक ओवरहेड से बचना चाहता हूं।
क्या अपवाद को पकड़ने के तरीके में अपवाद में संदर्भ के महत्वपूर्ण टुकड़े (जैसे फाइलनाम संसाधित या जो भी हो) को स्टोर करने का कोई तरीका है?
दिलचस्प। क्या आपने 'try {' और '} को पकड़ने का विचार किया है {... फेंक;}' 'if! DEBUG' में। देव में आपको मूल कॉल साइट से मूल अपवाद मिलेगा। –
कोशिश करें {..} पकड़ {.. फेंक;} पैटर्न का उपयोग करने के बारे में, लेकिन सीएलआर अपवाद को फेंकने के दौरान अपने विजुअल स्टूडियो विकल्पों को तोड़ने के लिए बदलें। – Simon
पोस्टशर्प जैसे एओपी के लिए एक अच्छा फिट लगता है, लेकिन यह इसे पकड़ने की आपकी आवश्यकता को पूरा नहीं करता है। यह सिर्फ कोडिंग की मात्रा को हटा देता है जो आपको करने की ज़रूरत है। –