Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Comment créer une trace SQL pour capturer des événements SQL Server

Face à un problème de performances SQL Server, vous devez identifier rapidement la source de ce problème de performances. Par conséquent, un outil permettant de suivre la charge de travail actuelle et de détecter les problèmes de goulot d'étranglement sans entraîner de charge supplémentaire est nécessaire.

SQL Server fournit divers outils pour collecter les événements SQL Server. Par exemple :

  • La trace SQL outil, introduit dans SQL Server 2000. Il vous permet de définir des classes d'événements que vous prévoyez de collecter avec de nombreuses procédures stockées T-SQL. Vous pouvez collecter certains événements à l'aide du SQL Profiler ou l'appeler à partir du code. Mais ce dernier nécessitait des compétences et des efforts de développement spécifiques.
  • Le Profileur SQL Server outil. Vous pouvez l'utiliser pour collecter des événements liés aux performances, détecter des requêtes coûteuses et améliorer les performances. Il permet de collecter des nombres de variantes d'événements SQL Server et de les filtrer en fonction de vos variables de scénario.
  • Les événements étendus de SQL Server tool, un outil léger de suivi des événements, a été introduit dans SQL Server 2008 et amélioré dans SQL Server 2012. Il vous permet de créer et de configurer une session d'événements étendus, composée de nombreux événements prédéfinis. L'outil cible les événements et les problèmes liés aux performances, remplaçant ainsi les outils obsolètes SQL Trace et SQL Profiler.

Les outils de profilage intégrés produisent des impacts différents sur votre environnement de production lorsque vous les configurez pour collecter des événements SQL Server. Par ailleurs, la mise en place et la configuration de ces outils nécessitent assez souvent des compétences en développement. Par exemple, la configuration du scénario SQL Trace est une telle tâche.

Tous ces outils nécessitent au moins l'installation des outils de gestion de SQL Server. Le problème est que ce n'est peut-être pas une option pour certains environnements pour des raisons de sécurité. Ces outils sont applicables pour se connecter à l'instance SQL Server et récupérer les données.

Heureusement, le marché des outils d'administration SQL Server offre de nombreuses options pour les outils de profilage SQL. L'un des outils de traçage SQL les plus utiles et GRATUITS est le dbForge Event Profiler for SQL Server gratuit. outil.

Utilisation de l'outil dbForge Event Profiler for SQL Server pour tracer les événements

Cette solution GRATUITE vous permet de capturer et d'analyser la consommation des ressources SQL Server et les événements coûteux liés aux requêtes. Vous pouvez stocker ces données dans un fichier de trace physique pour un dépannage et une analyse ultérieurs. Il vous permet également de visualiser toutes les sessions en cours d'exécution sur votre serveur SQL et les requêtes exécutées sous ces sessions. En général, le profileur d'événements s'applique à plus de 1 500 événements traçables.

Le profileur d'événements dbForge aide à définir l'application, le nœud ou l'utilisateur avec l'activité d'exécution la plus intense. Il identifie l'instruction T-SQL ou la procédure stockée avec les pires performances et impact sur SQL Server, en suivant la consommation des ressources SQL Server. Il convient également de mentionner la possibilité de collecter des événements liés aux services d'analyse et d'intégration SQL Server.

Comparé à d'autres outils de profilage intégrés à SQL Server, le profileur d'événements dbForge garantit les performances de traceur les plus élevées avec la surcharge de serveur la plus faible. Vous pouvez télécharger gratuitement l'application depuis la page de téléchargement de Devart et l'installer sur votre machine :

Lorsque l'installation est terminée avec succès, l'assistant vous en informe et vous permet de lancer l'outil Event Profiler immédiatement :

Configuration de l'outil dbForge Event Profiler for SQL Server

L'outil dispose d'une interface simple et conviviale et de fonctionnalités robustes :

Pour démarrer le projet de capture d'événement, cliquez sur Nouveau option. Il lance l'assistant d'événements du serveur de profil.

Sélectionnez une connexion existante parmi les connexions précédemment utilisées ou entrez le nom d'une instance SQL Server, la méthode d'authentification et les informations d'identification pour établir la connexion :

Une fois connecté à l'instance SQL Server, vous sélectionnez un modèle d'événements dans la bibliothèque. Chaque modèle se compose de plusieurs événements pour servir un objectif spécifique de dépannage ou de réglage des performances. Vous verrez la liste des événements à capturer dans les Événements à capturer page. Ajoutez ou supprimez ces événements en fonction des exigences de traçage.

Du même Général , vous pouvez fournir la date et l'heure d'arrêt du processus de suivi des événements. Cela convient au scénario dans lequel vous exécutez l'outil et le laissez s'arrêter automatiquement.

Vous pouvez également modifier le chemin d'accès par défaut pour l'enregistrement du fichier de trace physique généré, la taille maximale du fichier de trace et le nombre maximal de fichiers. Ensuite, vous pouvez survoler les fichiers générés, comme indiqué ci-dessous :

Si vous ne travaillez pas avec des modèles, compilez manuellement la liste des événements capturés. Plus de 1500 événements sont disponibles dans le profileur d'événements dbForge. Décochez l'option de modèles et passez à la page suivante pour sélectionner les événements que vous souhaitez capturer.

Tous ces événements sont regroupés en catégories :

Si vous savez déjà quel nom d'événement vous prévoyez de capturer, vous pouvez le trouver plus rapidement en utilisant l'option "rechercher". Saisissez le nom de l'événement dans la barre de recherche :

Après avoir coché tous les événements à capturer dans la session de trace, cliquez sur Suivant pour continuer :

Sous les Actions page, sélectionnez la liste des champs à capturer dans les sessions d'événements :

L'outil dbForge Events Profiler offre un filtre "d'événements" flexible pour chaque événement capturé. Utilisez différents opérateurs, comparateurs et modèles pour contrôler la condition de filtrage :

Enfin, sélectionnez la liste des colonnes à capturer dans la session des événements.

Lorsque vous avez terminé de personnaliser la session d'événements, cliquez sur Exécuter pour commencer à capturer des événements spécifiés :

L'outil dbForge Event Profiler commence à capturer immédiatement les événements répondant aux filtres configurés.

Il génère une session de suivi d'événements détaillée avec des informations utiles sur chaque événement capturé et ses statistiques. Les textes de la requête se trouvent dans des grilles séparées, avec la possibilité d'extraire une requête T-SQL exécutée sous l'événement capturé dans une fenêtre séparée :

Lorsqu'il capture tous les événements cibles, vous pouvez arrêter la trace et filtrer les valeurs renvoyées par chaque colonne capturée :

Avec la possibilité de trier les valeurs dans chaque colonne, par ordre croissant ou décroissant, vous pouvez analyser les statistiques des événements capturés, comme indiqué ci-dessous :

Rappelez-vous que la trace des événements capturés est déjà stockée dans un fichier de trace physique. Ainsi, vous pouvez effectuer un dépannage et une analyse plus tard.

Conclusion

L'outil dbForge Event Profiler rend le processus de capture d'événements beaucoup plus facile à gérer. La configuration est intuitive et simple, et les options d'automatisation vous permettent d'exécuter et d'arrêter les sessions lorsque vous en avez besoin. Vous obtenez des statistiques détaillées pour les tâches de réglage des performances et de dépannage.

Voir aussi

Regardez cette vidéo pour savoir comment utiliser un fichier de trace pour rechercher et résoudre les blocages SQL Server.