Azure

2010-06-21 23 views
8

पर तैनात डब्ल्यूसीएफ सेवा में पकड़े गए अपवादों को कैसे लॉग अप करें क्लाउड पर होस्ट की गई डब्ल्यूसीएफ सेवा में पकड़े गए अपवादों को लॉग करने का सबसे अच्छा तरीका क्या है?Azure

उत्तर

11

आप सिस्टम.डिग्नोस्टिक्स का लाभ उठा सकते हैं और Trace.traceError() के साथ अपने अपवाद लॉग कर सकते हैं। फिर आप इन ट्रेस स्टेटमेंट को समय-समय पर टेबल स्टोरेज (शायद एक मिनट में?) पर अपलोड करने के लिए शेड्यूल कर सकते हैं, जहां आप ऑन-प्रिमाइसेस ऐप या कार्यकर्ता भूमिका में चल रहे किसी भी ट्रेस स्टेटमेंट को पुनर्प्राप्त और विश्लेषण कर सकते हैं।

उदाहरण के लिए: अपने कार्यकर्ता की भूमिका के ऑनस्टार्ट() में, तालिका भंडारण में अपना ट्रेस डेटा अपलोड करने के लिए डायग्नोस्टिक मैनेजर को कस्टमाइज़ करें।

var diag = DiagnosticMonitor.GetDefaultInitialConfiguration(); 
diag.Logs.ScheduledTransferLogLevelFilter = LogLevel.Information; 
diag.Logs.ScheduledTransferPeriod = TimeSpan.FromMinutes(1.0); 
DiagnosticMonitor.Start("DiagnosticsConnectionString", diag); 

फिर, जब भी आप अपने WCF सेवा में एक अपवाद मुठभेड़: इस उदाहरण में, यह हर मिनट, DiagnosticsConnectionString में निर्दिष्ट भंडारण खाते (इस है, डिफ़ॉल्ट रूप से, ऊपर भंडारण देव को इंगित करने के लिए सेट) पर अपलोड है , यह लॉग इन करें:

System.Diagnostics.Trace.TraceError("WCF Error caught: ..."); 

अंत में, या तो नैदानिक ​​डेटा क्वेरी करने के लिए कुछ कोड लिखते हैं, या की तरह कुछ का उपयोग नए निर्मित देखने पर दृश्य स्टूडियो भंडारण एक्सप्लोरर और त्रुटियों पर काम करते हैं।