2009-12-27 16 views
5

मुझे आश्चर्य है कि PHP में त्रुटियों को संभालने के लिए कौन से पैटर्न हैं?PHP परियोजनाओं में त्रुटियों को संभालने के लिए पैटर्न हैं?

मैं सिर्फ वैश्विक त्रुटि प्रबंधक ऑब्जेक्ट बनाने के करीब हूं जिसमें संदेशों को जोड़ने के तरीके हैं। चूंकि मेरा पूरा ऐप संकलित हो जाता है, इसलिए त्रुटि मैनेजर ऑब्जेक्ट में कोई भी त्रुटि त्रुटि लॉग होती है। मेरे फ्रंट कंट्रोलर (स्क्रिप्ट की आखिरी कुछ पंक्तियां) के अंत में मैं त्रुटियों को प्रदर्शित करने के लिए त्रुटि प्रबंधक को बताता हूं (यदि कोई है)। एक कल्पना की बात मैंने सोचा: आगंतुकों को वास्तव में तकनीकी विवरणों की परवाह नहीं है। इसके बजाय उन्हें एक बड़े "सोरी" के साथ एक सुंदर त्रुटि पृष्ठ प्राप्त करना चाहिए और एक ऐसी जानकारी जो त्रुटि की सूचना दी गई थी। फिर, ErrorManager व्यवस्थापक को सभी उपलब्ध जानकारी और लॉग के साथ एक त्रुटि लॉग फ़ाइल में सामान भेजता है। विकास को आसान बनाने के लिए, यह फ़ाइल बैकएंड के माध्यम से देखी जा सकती है।

कोई विचार नहीं है कि यह एक अच्छी रणनीति है या नहीं। मुझे यकीन है कि आप बेहतर जानते हैं :-)

उत्तर

4
3

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

ईमेलिंग के संबंध में, आप इस बारे में बहुत सावधान रहना चाहते हैं कि आप इसे कैसे करते हैं, क्योंकि जब त्रुटि शुरू होती है तो व्यवस्थापक सो सकता है, और जब तक वह जागता है तब तक उसके इनबॉक्स में 20,000 ईमेल समाप्त हो जाता है।

एक बेहतर विचार लॉग फ़ाइल या डेटाबेस का उपयोग करना और त्रुटि होने पर एक घंटा (या दिन) एक ईमेल भेजना है। इस तरह अधिकतम त्रुटियों के बारे में 12 ईमेल हैं।

+0

ईमेल के साथ अच्छा बिंदु! – openfrog

संबंधित मुद्दे