2016-02-29 2 views
11

मैं एक वेब अनुप्रयोग नीला के लिए तैनात किया है, लेकिन मैं कैसे त्रुटियों लॉग इन करने की पता नहीं है।एएसपी.नेट वेब एप्लिकेशन - त्रुटियों को कैसे लॉग करें?

public string ForceError() 
{ 
    throw new Exception("just a test exception"); 
    return "ok"; 
} 

कौन सा कारण बनता है और त्रुटि इस तरह::

परीक्षण प्रयोजनों के लिए मैं इस ForceError विधि है enter image description here

Azure पर मैं इस तरह सभी डायग्नोस्टिक लॉग्स सक्षम: enter image description here

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

क्या आपको पता है कि एप्लिकेशन से सभी त्रुटियों को लॉगिंग शुरू करने के लिए मुझे क्या करना चाहिए?

उत्तर

5

Azure वेबसाइट्स पर, लॉग करने का सबसे अच्छा तरीका एप्लिकेशन अंतर्दृष्टि होगा, आप क्रैश/गति/प्रदर्शन के बारे में अंतर्दृष्टि प्राप्त करने के लिए मुफ्त संस्करण का उपयोग कर सकते हैं।

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

अधिक जानकारी के लिए: https://azure.microsoft.com/en-in/documentation/articles/app-insights-api-custom-events-metrics/

के बजाय स्वचालित रूप से आवेदन इनसाइट्स को विन्यस्त, मेरा सुझाव है, एक खाली परियोजना लेने, सेटअप आवेदन अंतर्दृष्टि। सभी अतिरिक्त कॉन्फ़िगरेशन फ़ाइलों और nuget संकुल नोटिस करें। आवेदन कुंजी/हस्ताक्षर को छोड़कर, कुछ अंतर्दृष्टि कॉन्फ़िगरेशन फ़ाइल है, आप सबकुछ बंद कर सकते हैं।

केवल जब आप मैन्युअल रूप से अपवाद को ट्रैक करना चाहते हैं, तो आप टेलीमेट्री क्लाइंट बना सकते हैं और TrackException विधि को कॉल कर सकते हैं। यदि आपको आवश्यकता हो तो आप अधिक जानकारी पास कर सकते हैं।

+0

हाय, यह मैं क्या देख रहा था हो रहा है। क्या आप 'त्रुटि स्तर' लॉगिंग के लिए ऐप अंतर्दृष्टि का उपयोग कैसे करें और/या संदर्भ प्रदान करने के बारे में विस्तार से बता सकते हैं? – nest

+1

बस एक अतिरिक्त, अगर मुझे पसंद है तो आप एमवीसी फ्रेमवर्क का उपयोग कर रहे हैं यह बताता है कि यह कैसे करना है। https://azure.microsoft.com/en-us/documentation/articles/app-insights-asp-net-exceptions/#mvc – nest

11

मुझे डर है कि सिर्फ अपवाद फेंकना एज़ूर वेब एप्लिकेशन लॉगिंग में काम नहीं करता है।

एएसपी.NET अनुप्रयोग System.Diagnostics.Trace कक्षा का उपयोग अनुप्रयोग निदान लॉग में जानकारी लॉग करने के लिए कर सकते हैं। उदाहरण में चार विधियों नीचे नैदानिक ​​लॉग के स्तर के साथ अनुरूप:

Trace.TraceError("Message"); // Write an error message 
Trace.TraceWarning("Message"); // Write a warning message 
Trace.TraceInformation("Message"); // Write an information message 
Trace.WriteLine("Message"); // Write a verbose message 

enter image description here

लॉग इन घटनाओं, इस तरह के उदाहरण आईडी, धागा आईडी, और एक अधिक के रूप में ब्लॉब भंडारण लॉग में अतिरिक्त जानकारी के लिए बुनियादी जानकारी के अलावा सीएसवी में दानेदार टाइमस्टैम्प (टिक प्रारूप)।

enter image description here

एक महान लेख here प्रवेश सुझावों और उपकरणों के बारे में।

आधिकारिक Azure Web Apps Logging Document का संदर्भ भी देखें।

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