88 votes

Qu'est-ce que l'Audit "Déconnexion" dans le générateur de profils SQL Server?

Je suis en cours d'exécution d'une importation de données (à l'aide de C#/Linq), et bien entendu, je suis en train d'optimiser mes requêtes autant que possible. À cette fin, je suis en cours d'exécution d'une trace sur la DB à l'aide de SQL Server Profiler, avec ma trace filtré par mon nom d'utilisateur SQL (c'est un nom qui peut uniquement être attribuée à mon processus d'importation des données).

Curieusement, la plupart de mes instructions SQL sont vraiment rapide :) - très peu de demandes, même se briser sur la 1ms marque. Mais espacés entre toutes mes requêtes sont plusieurs des lignes où la EventClass est de l'Audit "Login" ou "Audit Logout" - et la durée d'un Audit "Déconnexion" peut-être jusqu'à une minute!

Est-ce que cela a quelque chose à voir avec le fait que je suis en utilisant des transactions dans mon importation? Si oui, est-il un moyen pour savoir qui sont les grands-frapper les requêtes afin que je puisse nettoyer ceux-ci?

79voto

Thies Points 1795

Si je me souviens correcte, la durée d'un Audit de Déconnexion est la quantité de temps que la connexion a été ouverte. E. g. rien à voir avec la vitesse de la commande juste la quantité de temps que la connexion a été "connecté".

12voto

Ruben Bartelink Points 23945

Connexion/Déconnexion d'événements sont liés à la création / destruction. IIRC, le temps est le "a été enregistré dans le temps", par opposition à un traitement de durée avec d'autres journaux d'événements.

En général, on se cache ces événements, sauf si vous pensez qu'il ya un problème avec le pool de connexion de gestion etc.

Les premières fois pour les lots doivent être suffisantes pour diagnostiquer le temps de l'activité réelle, y compris l'impact de toutes les transactions, etc.

2voto

Rory Points 13087

Également intéressant de noter que dans cette réponse que la Vérification de Connexion/Déconnexion peut juste dire que la connexion est réutilisée / retour pour le pool de connexions.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X