c# - SQL सर्वर प्रोफाइलर में "ऑडिट लॉगआउट" क्या है?




linq sql-server-2005 (3)

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

आश्चर्यजनक रूप से पर्याप्त, मेरे अधिकांश SQL कथन वास्तव में त्वरित हैं :) - बहुत कम प्रश्न 1ms अंक से भी तोड़ते हैं। लेकिन मेरे सभी प्रश्नों के बीच में कई पंक्तियां हैं जहां इवेंट क्लास "ऑडिट लॉग इन" या "ऑडिट लॉगआउट" है - और "ऑडिट लॉगआउट" की अवधि एक मिनट तक हो सकती है!

क्या इस तथ्य के साथ कुछ करने के लिए कुछ है कि मैं अपने आयात में लेनदेन का उपयोग कर रहा हूं? यदि हां, तो क्या यह पता लगाने का कोई तरीका है कि बड़े-बड़े प्रश्न कौन से हैं, इसलिए मैं उन्हें साफ़ कर सकता हूं?


अगर मुझे सही याद है, तो ऑडिट लॉगआउट की अवधि कनेक्शन की खुली अवधि की मात्रा है। आदेश की गति के साथ कुछ भी करने के लिए कुछ नहीं - केवल लॉग इन 'लॉग इन' था।


ऑडिट लॉगआउट इवेंट क्लास इंगित करता है कि उपयोगकर्ता ने माइक्रोसॉफ्ट एसक्यूएल सर्वर से लॉग आउट (लॉग ऑफ) किया है। इस कक्षा में घटनाओं को नए कनेक्शन या कनेक्शन कनेक्शन से पुन: उपयोग किए जाने वाले कनेक्शन द्वारा निकाल दिया जाता है।

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

अधिक जानकारी के लिए मैं https://msdn.microsoft.com/en-us/library/ms175827.aspx सुझाव देता हूं :)


इस जवाब में ध्यान देने योग्य भी है कि लेखापरीक्षा लॉगिन / लॉगआउट का मतलब यह हो सकता है कि कनेक्शन का पुन: उपयोग किया जा रहा है / कनेक्शन पूल में वापस कर दिया गया है।





sql-server-profiler