2009-12-05 9 views
10

एएसपीनेट एमवीसी में लॉग इन करने का सबसे अच्छा तरीका क्या है? मेरा मतलब है कि कोई भी घटना, मैं वर्तमान में एनएलओजी का उपयोग कर रहा हूं लेकिन मुझे पता है कि ऐसा करने के कई संभावित तरीके हैं।एएसपीनेट एमवीसी में लॉगिंग के लिए सर्वोत्तम प्रथाओं?

उत्तर

5

मुझे नहीं लगता कि एएसपीनेट एमवीसी में सबसे अच्छा ढांचा/उपकरण या मानक तरीका है। बस इसे किसी अन्य ढांचे में जिस तरह से करेंगे। जब मैं लॉगिंग सेट अप करता हूं, तो मैं आमतौर पर इसे किसी विशेष स्तर से बंधे रहने के बजाय, शेष एप्लिकेशन के लिए उपलब्ध संसाधन के रूप में सोचता हूं। यह आम है, और वास्तव में लॉगिंग मानक पहलू ओरिएंटेड प्रोग्रामिंग पेश करते समय दिया गया मानक उदाहरण है। देखें:

वास्तव में क्या आप लॉग इन करने की कोशिश कर रहे हैं पर निर्भर करता है, action filters का उपयोग करें; लॉग इन करने के लिए एक शानदार तरीका है कि कौन से पृष्ठ अनुरोध किए गए हैं और त्रुटि प्रबंधन कवरेज के लिए। गैर-एमवीसी एएसपीनेट ऐप्स आमतौर पर ग्लोबल.एक्सएक्स में कुछ करते हैं, जैसा कि here का उल्लेख किया गया है। वास्तव में, भले ही आप एक्शन फ़िल्टर का उपयोग करते हैं, जो मैं सुझाऊंगा, ग्लोबल.एक्सएक्स के अनुप्रयोग_error घटना में कुछ बुनियादी त्रुटि प्रबंधन भी शामिल है; कुछ वास्तव में पागल होने पर यह एक्शन फ़िल्टर की तुलना में थोड़ी अधिक भरोसेमंद आग लग जाएगा।

इसके अलावा, उस बिंदु पर अपने लॉगिंग संसाधन को कॉल करें जहां सामान होता है जो आपके लिए दिलचस्प है। डीबी या फाइल? या तो काम करता है, और जब तक यह एक अच्छी विधि या दो में encapsulated है, आप हमेशा बाद में स्विच कर सकते हैं।

6

मैं log4net का उपयोग करता हूं, यह काफी अच्छा है। इसके बारे में जागरूक होने के कुछ मुद्दे हैं, आप उनके बारे में अधिक जानकारी प्राप्त कर सकते हैं here। मैं Elmah की भी सिफारिश करता हूं, मेरे लिए मैं इसे हर परियोजना पर उपयोग करता हूं, इसकी एक शर्त है।

+0

एल्मा वास्तव में अच्छा लग रहा है। क्या लॉगऑनेट और एल्मा दोनों को एक साथ उपयोग करना आवश्यक है? –

+0

एल्मा अप्रत्याशित त्रुटियों को पकड़ने में मदद करता है। यदि आप global.asax errorhandler में लॉगेंट्री लिखते हैं तो Log4net वही करता है। – Christian13467

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