Sessions d’événements étendus
S’applique à :SQL ServerAzure SQL DatabaseAzure SQL Managed Instance
Une session Événements étendus est créée dans le processus sql Server Moteur de base de données hébergeant le moteur d’événements étendus. Les aspects suivants d’une session Événements étendus fournissent un contexte pour comprendre l’infrastructure des événements étendus et le traitement qui se déroule :
États de la session. Les différents états indiquant qu’une session Événements étendus se trouve dans le moment
CREATE EVENT SESSION
où etALTER EVENT SESSION
les instructions sont exécutées.Contenu et caractéristiques de la session. Contenu d’une session d’événements étendus, comme les cibles et les événements, et la façon dont ces objets sont liés dans une session ou entre les sessions.
États de session
L'illustration ci-dessous indique les divers états d'une session Événements étendus.
En faisant référence à la figure précédente, observez que l’état de session change en tant que différentes commandes DDL (Data Definition Language) sont émises pour une session d’événements. Ces changements d'état sont décrits dans le tableau ci-dessous.
Nom de l'illustration | Instruction DDL | Description |
---|---|---|
Créer | CREATE EVENT SESSION |
Le processus hôte crée un objet de session qui contient les métadonnées fournies par CREATE EVENT SESSION . Le processus hôte valide la définition de session, valide le niveau d’autorisation de l’utilisateur et stocke les métadonnées dans la master base de données. À ce stade, la session n’est pas active. |
Alter | ALTER EVENT SESSION , STATE=START |
Le processus hôte démarre la session. Il lit les métadonnées stockées, valide la définition de session, vérifie le niveau d'autorisation utilisateur et crée la session. Les objets de session, tels que les événements et les cibles, sont chargés et la gestion des événements est active. |
Alter | ALTER EVENT SESSION , STATE=STOP |
Le processus hôte arrête la session active mais conserve les métadonnées. |
Supprimer | DROP EVENT SESSION |
Selon que la session est active ou non, Drop (DROP SESSION ) supprime les métadonnées et ferme la session active ou supprime les métadonnées de session. |
Contenu et caractéristiques de session
Les sessions Événements étendus ont des limites implicites dans lesquelles la configuration d’une session ne modifie pas la configuration d’une autre session. Toutefois, ces limites n’empêchent pas l’utilisation d’un événement ou d’un type cible dans plusieurs sessions.
La figure ci-dessous montre le contenu de la session et la relation entre packages et sessions.
En faisant référence à l’illustration précédente, gardez à l’esprit que :
- Le mappage entre les objets de package et les sessions est beaucoup à plusieurs, ce qui signifie qu’un objet d’un type particulier peut apparaître dans plusieurs sessions, et qu’une session peut contenir plusieurs objets.
- Le même événement (événement 1) ou type cible (cible 1) peut être utilisé dans plusieurs sessions.
Les sessions présentent les caractéristiques suivantes :
- Les actions et les prédicats sont liés aux événements session par session. Si vous avez l’événement 1 dans la session A avec l’action 1 et le prédicat Z, cela n’affecte pas l’événement 1 dans la session B avec l’action 2 et l’action 3 sans prédicat.
- Les stratégies sont jointes aux sessions pour gérer la mise en mémoire tampon et la distribution, ainsi que le suivi de causalité.
La mise en mémoire tampon fait référence à la façon dont les données d’événement sont stockées pendant l’exécution d’une session d’événements. Les stratégies de mise en mémoire tampon spécifient la quantité de mémoire à utiliser pour les données d'événement et la stratégie de perte pour les événements. Dispatch fait référence à la durée d’attente des événements dans les mémoires tampons avant d’être servi aux cibles pour le traitement.
Le suivi de la causalité effectue le suivi du travail entre plusieurs tâches. Lorsque le suivi de causalité est activé, chaque événement déclenché possède un ID d'activité unique sur le système. L'ID d'activité est constitué d'une valeur GUID qui demeure constante sur tous les événements liés à une tâche et d'un numéro de séquence qui est incrémenté chaque fois qu'un événement est déclenché. Lorsqu'une tâche entraîne l'exécution d'une autre tâche pour un même travail, l'ID d'activité de la tâche parent est envoyé à la tâche enfant. La tâche enfant fournit en sortie l’ID d’activité de la tâche parent la première fois qu’elle déclenche un événement.
Contenu associé
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour