2010-03-08 18 views
9

के लिए ELMAH त्रुटि लॉगिंग हम वेब एप्लिकेशन अपवाद लॉग करने के लिए ELMAH का उपयोग कर रहे हैं जो महान काम करता है! इसके अलावा हम जानना चाहते हैं कि विंडोज सेवा अपवाद लॉग करने के लिए ELMAH को कैसे अनुकूलित किया जाए।विंडोज सेवा

मुझे केवल विंडोज सेवा अपवाद लॉगिंग के लिए किसी अन्य एप्लिकेशन का उपयोग करने में रूचि नहीं है।

किसी भी मदद की सराहना की जाएगी।

उत्तर

12

मैंने पहले यह किया था। मुझे खोदने से उपयोग करने के लिए कोड मिला, हालांकि त्रुटि कोड से शुरू होने वाला स्रोत कोड। FromCurrentContext()। उठाएं (पूर्व); तरीका।

यह वर्तमान में केवल डेटाबेस पर लॉग इन करता है (जैसा कि मुझे बस इतना आवश्यक है) लेकिन थोड़ी और अधिक जांच के साथ आप एक रैपर विधि लिख सकते हैं जो कॉन्फ़िगरेशन फ़ाइल में सेट अप किए गए किसी भी चीज़ को लॉग करता है।

try 
{ 

Elmah.SqlErrorLog ErrorLog = new Elmah.SqlErrorLog(ConfigurationManager.ConnectionStrings["Default"].ConnectionString); 

ErrorLog.ApplicationName = "AppName"; 

ErrorLog.Log(new Elmah.Error(new Exception("example"))); 

} 
catch (Exception ex) 
{ 
    //catch sql error 
} 

मेरी सेवा में मैं Errorlog चर एक सार्वजनिक सिंगलटन वस्तु है कि आसानी से सेवा परियोजना तक पहुंचा गया था बनाया है।

+1

ऐसा लगता है कि आप ConfigurationManager.GetConfigurationSection ("elmah/errorLog") का उपयोग कर elmah कॉन्फ़िगरेशन अनुभागों का पुन: उपयोग भी कर सकते हैं, और कनेक्शन स्ट्रिंग के स्थान पर निर्माता को परिणाम (आईडी आईडी के रूप में) फ़ीड कर सकते हैं। – smaglio81

0

आप इसका इस्तेमाल कर सकते हैं

Elmah.ErrorLog.GetDefault (शून्य) .log (नई Elmah.Error (नया अपवाद ("त्रुटि पाठ")));