2012-06-19 17 views
5

क्या विशिष्ट स्थिति के तहत है यह ठीक है (या अनुशंसित) एक उत्पादन प्रणाली पर अपने यूआई के लिए एक स्टैकट्रेस साथ अंत उपयोगकर्ताओं पेश करने के लिए।जब * है * हम उत्पादन प्रणालियों पर stacktraces दिखाने

बड़ी संख्या में वेबसाइटें और SO लेख हैं जहां लोग पूछते हैं कि क्या उन्हें अंतिम उपयोगकर्ता को स्टैकट्रैक दिखाना चाहिए। आश्चर्य की बात नहीं है, जवाब एक शानदार "नहीं!"

उदाहरण के लिए:

हालांकि, मैं हाल ही में एक और डेवलपर के साथ एक बातचीत की थी, जहां मैं समय की एक अच्छा सौदा खर्च पोस्टिंग क्यों shacktraces shou यूआई के माध्यम से उपयोगकर्ता को पास नहीं किया जाएगा। उस चर्चा ने मुझे वापस जाना और मेरे मौलिक (पूर्ण) किरायेदारों में से एक को फिर से देखा - उपयोगकर्ता को उत्पादन में कच्चे स्टैकट्रेस को कभी नहीं देखा जाएगा।

मुझे आकर्षक कारण नहीं मिला। हालांकि, मुझे यकीन है कि वैध उपयोगकाज है, और मैं इसे समझना चाहता हूं, या अपने पूर्ण किरायेदार को तेज़ी से पकड़ना जारी रखना चाहता हूं।

उत्तर

6

आप नहीं करते - वे उपयोगकर्ता के लिए बस सहायक नहीं हैं।

उपयोगकर्ताओं को संदेश मिलते हैं। डेवलपर्स को लॉग इन, एक ईमेल, एक कतार, स्थानीय रूप से/आंतरिक रूप से चलते समय शायद एचटीएमएल प्रदान किया जा सकता है,

1

यहां पर, मेरे कार्यालय में कई अलग-अलग आंतरिक परियोजनाओं के साथ, मुझे स्टैक निशान देखने से लाभ होता है कि मेरे सहकर्मी अन्य विभागों में देखते हैं जब मेरे प्रोग्राम क्रैश होते हैं। वे सिर्फ दुर्भावनापूर्ण या जानकार नहीं हैं कि यह जानने के लिए कि क्या हो रहा है, अन्यथा वे मेरे साथ काम करेंगे। यह मुझे उपयोगकर्ता को पूछताछ करने के लिए खिड़की की अवधि भी देता है कि यह निर्धारित करने के लिए कि वे क्या कर रहे थे (जबकि यह अभी भी उनके दिमाग में ताजा है)। यदि स्टैक ट्रेस को दबाया गया था या कुछ अन्य सुंदर (लेकिन छुपा) त्रुटि हैंडलिंग जगह पर थी, तो मुझे नहीं पता कि स्टैक ट्रेस के अलावा कोई त्रुटि कैसे हुई।

1

ओपन सोर्स प्रोजेक्ट्स में या जहां आपने डीबग मोड चालू किया है। हो सकता है कि उपयोगकर्ता यह जानने के लिए एप्लिकेशन का उपयोग कर रहा है कि तकनीक एक समान ऐप बनाने के लिए कैसे काम करती है, या हो सकता है कि वे स्वयं इसे योगदान देने की योजना बना रहे हों।

कई अलग-अलग प्रकार के उपयोगकर्ता हैं। मुझे लगता है कि उन्हें इस विकल्प को चालू करने की इजाजत दी गई है लेकिन यह इतना आसान नहीं होना चाहिए कि आपका औसत जो दुर्घटना से स्टैकट्रैस चालू कर सके।

0

एप्लिकेशन क्रैश होने पर स्टैक ट्रेस उपयोगकर्ता के लिए उपलब्ध होना चाहिए, क्योंकि एक स्टैक ट्रेस आम तौर पर दुर्घटना का कारण बनने वाली बग की पहचान करता है, और वहां एक काम उपलब्ध हो सकता है। काम-चारों ओर स्पष्ट रूप से केवल तभी काम करता है जब दुर्घटना बग के कारण होती है, काम के चारों ओर के लिए होता है - अन्यथा कार्य-आसपास का प्रयास करना बस बर्बाद हो जाता है।

उपयोगकर्ता को अद्यतन करने की आवश्यकता वाले किसी भी चीज़ में एक बग के कारण भी एक क्रैश हो सकता है, उदा। रेखाचित्र बनाने वाला।इस मामले में, स्टैक ट्रेस में आमतौर पर ग्राफिक्स ड्राइवर का नाम होता है, जैसे atiumdag.dll।

की कल्पना करते हैं:

कोई स्टैक ट्रेस: ​​

ग्राहक: मैं एक संदेश बॉक्स कहा, "कार्यक्रम काम करना बंद कर" मिलता है।

समर्थन: इसे आज़माएं।

ग्राहक: नहीं, मदद नहीं करता है।

समर्थन: इसे आज़माएं।

ग्राहक: नहीं, मदद नहीं करता है।

समर्थन: इसे आज़माएं।

ग्राहक: नहीं, मदद नहीं करता है।

समर्थन: इसे आज़माएं।

ग्राहक: नहीं, मदद नहीं करता है।

स्टैक ट्रेस के साथ

:

ग्राहक: मैं एक संदेश बॉक्स कहा, "कार्यक्रम काम करना बंद कर" मिलता है।

समर्थन: "विवरण" बटन पर क्लिक करें और मुझे स्टैक ट्रेस भेजें।

ग्राहक: (स्टैक ट्रेस भेजता है)

समर्थन: इस आवेदन, जो सुविधा एक्स से शुरू हो रहा है जब आवेदन एक गैर डिफ़ॉल्ट पथ में स्थापित किया गया है में एक ज्ञात बग के कारण होता है। इसे अगले संस्करण में तय किया जाएगा, जिसे अगले वर्ष जारी किया जाएगा। हालांकि, आप या तो सुविधा एक्स अक्षम या डिफ़ॉल्ट स्थापना पथ में अनुप्रयोग को पुन: स्थापित करके इसके आसपास काम कर सकते हैं।