Cible de fichier d'événements
La cible de fichier d'événements est une cible qui écrit des tampons complets sur le disque.
Le tableau ci-dessous décrit les options disponibles pour configurer la cible de fichier d'événements.
Option |
Valeurs autorisées |
Description |
---|---|---|
filename |
Toute chaîne incluant jusqu'à 260 caractères. Cette valeur est requise. |
Emplacement et nom du fichier. Vous pouvez utiliser toute extension de nom de fichier. |
max_file_size |
Entier quelconque de 64 bits. Cette valeur est facultative. |
Taille maximale du fichier, en mégaoctets (Mo). Si max_file_size n'est pas spécifié, la taille du fichier peut croître jusqu'à ce que le disque soit plein. La taille de fichier par défaut est 1 Go. max_file_size doit être supérieure à la taille actuelle des tampons de session. Si ce n'est pas le cas, la cible de fichier ne pourra pas s'initialiser et indiquera que max_file_size n'est pas valide. Pour afficher la taille actuelle des tampons, interrogez la colonne buffer_size dans la vue de gestion dynamique sys.dm_xe_sessions. Si la taille de fichier par défaut est plus petite que la taille de la mémoire tampon de session, nous vous recommandons d'affecter à max_file_size la valeur spécifiée dans la colonne max_memory dans l'affichage catalogue sys.server_event_sessions. Lorsque max_file_size a une taille supérieure à celle des tampons de session, cette valeur peut être arrondie au multiple le plus proche de la taille de la mémoire tampon de session. Cela peut créer un fichier cible plus petit que la valeur spécifiée de max_file_size. Par exemple, si la taille de la mémoire tampon est de 100 Mo et que max_file_size a la valeur 150 Mo, la taille de fichier résultante est arrondie à 100 Mo parce qu'une deuxième mémoire tampon ne tiendrait pas dans l'espace de 50 Mo restant. Si la taille de fichier par défaut est inférieure à celle de la mémoire tampon de session, nous vous recommandons d'affecter à max_file_size la valeur figurant dans la colonne max_memory de l'affichage catalogue sys.server_event_sessions. |
max_rollover_files |
Entier quelconque de 32 bits. Cette valeur est facultative. |
Nombre maximal de fichiers à conserver dans le système de fichiers. |
increment |
Entier quelconque de 32 bits. Cette valeur est facultative. |
Croissance incrémentielle, en mégaoctets (Mo), pour le fichier. Si cette option n'est pas spécifiée, la valeur par défaut pour l'incrément est égale à deux fois la taille de la mémoire tampon de session. |
La première fois qu'une cible de fichier d'événements est créée, le nom de fichier que vous spécifiez reçoit le suffixe _0_ et une valeur d'entier long. La valeur entière est calculée en tant que nombre de millisecondes écoulées entre le 1er janvier 1600 et la date et l'heure de création du fichier. Les fichiers de substitution suivants utilisent également ce format. En examinant la valeur de l'entier long, vous pouvez déterminer le fichier le plus actuel. L'exemple suivant montre comment les fichiers sont nommés dans un scénario où vous spécifiez l'option filename sous la forme C:\OutputFiles\MyOutput.xel :
premier fichier créé - C:\OutputFiles\MyOutput_0_128500310259380000.xel
premier fichier de substitution - C:\OutputFiles\MyOutput_0_128505831770890000.xel
deuxième fichier de substitution - C:\OutputFiles\MyOutput_0_132410772966237000.xel
Ajout de la cible à une session
Pour ajouter la cible du fichier d'événements à une session Événements étendus lorsque vous créez ou modifiez une session d'événements, vous inclurez les instructions suivantes en remplaçant file_name par le nom de fichier et le chemin d'accès désirés :
ADD TARGET package0.event_file(
SET filename='file_name.xel')
Vérification de la sortie cible
Pour vérifier la sortie de la cible de fichier, vous devez utiliser la fonction sys.fn_xe_file_target_read_file. Nous vous recommandons de convertir les données au format XML. Vous pouvez utiliser la syntaxe suivante, en remplaçant file_name par le nom de fichier et le chemin d'accès que vous avez spécifiés quand vous avez ajouté la cible :
SELECT *, CAST(event_data AS XML) AS 'event_data_XML'
FROM sys.fn_xe_file_target_read_file('file_name*.xel', NULL, NULL, NULL)
Voir aussi
Référence
sys.fn_xe_file_target_read_file (Transact-SQL)
CREATE EVENT SESSION (Transact-SQL)
ALTER EVENT SESSION (Transact-SQL)