2016-02-12 5 views
5

मैंने हाल ही में अपना पहला उत्पादन एप्लिकेशन होस्ट करना शुरू कर दिया। मैं आगे बढ़ गया और आवेदन अंतर्दृष्टि सक्रिय किया, जो मुझे लगता है कि बहुत मूल्य है। हालांकि, मुझे आंकड़े मिल रहे हैं जो डेवलपर पक्ष से आते हैं, उदाहरण के लिए लॉग लोकहोस्ट से प्रविष्टियां रिकॉर्ड कर रहे हैं: xxxx। मुझे यकीन है कि इसे बंद करने का एक तरीका है। क्या कोई मुझे कुछ पॉइंटर्स दे सकता है?Azure एप्लिकेशन अंतर्दृष्टि पर स्थानीयहोस्ट को अनदेखा कैसे करें

उत्तर

7
  1. आप पहले से ही एकत्र टेलीमेटरी कि आप यूआई में F5 के साथ मिलता है, क्योंकि यह संपत्ति IsDeveloperMode है फ़िल्टर कर सकते हैं = सच
  2. आप web.config परिवर्तन कि web.debug.config और पत्तियों से आवेदन इनसाइट्स मॉड्यूल को हटा कर सकते हैं यह केवल web.release.config में है (यदि आपके पास केवल ऑटो-संग्रहित गुण हैं)
  3. आप कॉन्फ़िगरेशन से उपकरण कुंजी को हटा सकते हैं और इसे केवल कोड में रिलीज़ संस्करण के लिए सेट कर सकते हैं: TelemetryConfiguration.Active.InsrumentationKey = "MyKey" (यदि आप डीबग में iKey प्रदान न करें आप अभी भी वीएस 2015 में एआई हब में सभी टेलीमेट्री देख सकते हैं)
  4. आप differen का उपयोग कर सकते हैं डिबग और जारी करने के लिए टी iKeys फिर से कोड में निर्धारित कर उस
  5. आप ApplicationInsights पूरी तरह से डिबग में सेट करके निष्क्रिय कर सकते हैं TelemetryConfiguration.Active.DisableTelemetry = सच
+0

मैं अपने FilterConfig.cs में कोड की निम्न पंक्तियां जोड़ी: '#if TelemetryConfiguration जारी .active.DisableTelemetry = सत्य; # endif' अनास्तासिया, क्या आपको लगता है कि यह काम करेगा? – chesco

+0

यदि आपके पास एक मानक एप्लिकेशन है जो रिलीज को परिभाषित करता है और यदि आप हां से कोड में कोई कस्टम टेलीमेट्री कॉन्फ़िगरेशन नहीं बनाते हैं। अक्षम टेलीमेट्री प्रत्येक टेलीमेट्री कॉन्फ़िगरेशन पर लागू होती है। Autocollection केवल TelemetryConfiguration.Active का उपयोग करता है। इसके अलावा मुझे नहीं पता कि क्या आप फ़िल्टरकॉन्फिग में कोड से पहले smth ट्रैक करते हैं (उदाहरण के लिए कुछ निशान)। यदि हां, उन टेलीमेट्री की तुलना में स्पष्ट रूप से भेजा जाएगा। –

8

यदि आप उपयोग कर रहे हैं आप भी TelemetryProcessor (का उपयोग कर स्थानीय होस्ट टेलीमेटरी फ़िल्टर कर सकते हैं नवीनतम (एप्लिकेशन अंतर्दृष्टि वेब एसडीके का प्रीरलीज़ संस्करण)। यहां एक उदाहरण दिया गया है। ApplicationInsights.config में

public class LocalHostTelemetryFilter : ITelemetryProcessor 
{ 
    private ITelemetryProcessor next; 
    public LocalHostTelemetryFilter(ITelemetryProcessor next) 
    { 
     this.next = next; 
    } 

    public void Process(ITelemetry item) 
    { 
     var requestTelemetry = item as RequestTelemetry; 
     if (requestTelemetry != null && requestTelemetry.Url.Host.Equals("localhost", StringComparer.OrdinalIgnoreCase)) 
     { 
      return; 
     } 
     else 
     { 
      this.next.Process(item); 
     } 
    } 
} 

और फिर रजिस्टर यह: अपनी परियोजना के लिए इस वर्ग के जोड़े

<TelemetryProcessors> 
    <Add Type="LocalhostFilterSample.LocalHostTelemetryFilter, LocalHostFilterSample"/> 
</TelemetryProcessors> 
+0

यह अच्छा तरीका है क्योंकि मैं सेलेनियम के साथ एक कस्टम हेडर भेज सकता हूं और यह कोड तब मेरे परीक्षणों को अनदेखा कर सकता है। हाँ मुझे पता है, मेरे पास एक समर्पित परीक्षण वातावरण होना चाहिए .. निश्चित रूप से। लेकिन कम से कम मैं परीक्षण कर रहा हूँ ..: डी – ppumkin

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