2015-05-25 8 views
5

मैं एप्लिकेशन अंतर्दृष्टि के लिए नया हूं और इसे कोई कस्टम ईवेंट का उपयोग करके सेट अप नहीं किया है और मैं सभी डिफ़ॉल्ट का उपयोग कर रहा हूं। आवेदन एमवीसी 5 पर बनाया गया है। ApplicationInsights.config में एक टिप्पणी है:एप्लिकेशन अंतर्दृष्टि में उपयोगकर्ता नाम सेट करना

"अपने आवेदन में कस्टम उपयोगकर्ता ट्रैकिंग को लागू करते समय, इस टेलीमेट्री प्रारंभकर्ता को हटा दें ताकि यह सुनिश्चित किया जा सके कि उपयोगकर्ताओं की संख्या को एप्लिकेशन अंतर्दृष्टि में सटीक रूप से रिपोर्ट किया गया हो। "

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

तो मैं कुछ कुकी पर जाने के बजाए उपयोगकर्ता को एप्लिकेशन इनसाइट्स में अपने उपयोगकर्ता नाम से कैसे जोड़ूं डिफ़ॉल्ट व्यवहार हो?

उत्तर

9

अपने कस्टम उपयोगकर्ता नाम करने के लिए उपयोगकर्ता लिंक करने के लिए, आप निम्न टेलीमेटरी प्रारंभकर्ता बना सकते हैं:

public class RealUserIDTelemetryInitializer:ITelemetryInitializer 
{ 
    public void Initialize(Microsoft.ApplicationInsights.Channel.ITelemetry telemetry) 
    { 
     // Replace this with your custom logic 
     if (DateTime.Now.Ticks % 2 > 0) 
     { 
      telemetry.Context.User.Id = "Ron Weasley"; 
     } 
     else 
     { 
      telemetry.Context.User.Id = "Hermione Granger"; 
     } 
    } 
} 

फिर AI.config में इस टेलीमेटरी प्रारंभकर्ता रजिस्टर।

 <TelemetryInitializers> 
.... 
     <Add Type="MyApp.RealUserIDTelemetryInitializer, MyApp" /> 
     </TelemetryInitializers> 
संबंधित मुद्दे