Ereignisdateiziel

Das Ereignisdateiziel ist ein Ziel, das vollständige Puffer auf Datenträger schreibt.

In der folgenden Tabelle werden die verfügbaren Optionen zum Konfigurieren des Ereignisdateiziels beschrieben.

Option

Zulässige Werte

Beschreibung

filename

Eine beliebige Zeichenfolge mit bis zu 260 Zeichen. Dieser Wert ist erforderlich.

Der Speicherort und der Dateiname.

Sie können eine beliebige Dateinamenerweiterung verwenden.

max_file_size

Eine beliebige 64-Bit-Ganzzahl. Dieser Wert ist optional.

Die maximale Dateigröße in Megabyte (MB). Wenn max_file_size nicht angegeben ist, kann die Datei so lange vergrößert werden, bis der Speicherplatz auf dem Datenträger erschöpft ist. Die Standarddateigröße ist 1 GB.

max_file_size muss größer als die aktuelle Größe der Sitzungspuffer sein. Andernfalls wird zurückgegeben, dass max_file_size ungültig ist, und das Dateiziel kann nicht initialisiert werden. Fragen Sie zum Anzeigen der aktuellen Puffergröße die Spalte buffer_size in der dynamischen Verwaltungssicht sys.dm_xe_sessions ab.

Wenn die Standardgröße geringer als die Sitzungspuffergröße ist, sollten Sie für max_file_size den in der Spalte max_memory der Katalogsicht sys.server_event_sessions angegebenen Wert festlegen.

Wenn für max_file_size ein höherer Wert als für die Sitzungspuffer festgelegt ist, wird dieser möglicherweise auf das nächstkleinere Vielfache der Sitzungspuffergröße abgerundet. Damit wird eine Zieldatei erzeugt, die kleiner als der für max_file_size angegebene Wert ist. Beispiel: Wenn die Puffergröße 100 MB beträgt und für max_file_size 150 MB festgelegt sind, wird die resultierende Dateigröße auf 100 MB abgerundet, da in die verbleibenden 50 MB kein zweiter Puffer passen würde.

Wenn die Standardgröße geringer als die Sitzungspuffergröße ist, sollten Sie für max_file_size den Wert in der Spalte max_memory der Katalogsicht sys.server_event_sessions festlegen.

max_rollover_files

Eine beliebige 32-Bit-Ganzzahl. Dieser Wert ist optional.

Die maximale Anzahl von Dateien, die im Dateisystem beibehalten werden.

increment

Eine beliebige 32-Bit-Ganzzahl. Dieser Wert ist optional.

Die inkrementelle Zunahme für die Datei in Megabyte (MB). Falls der Wert für increment nicht angegeben wurde, wird als Standardwert das Doppelte der Sitzungspuffergröße verwendet.

Wenn ein Ereignisdateiziel zum ersten Mal erstellt wird, wird an den Dateinamen "_0_" und ein langer ganzzahliger Wert angefügt. Der ganzzahlige Wert entspricht der Anzahl von Millisekunden zwischen dem 1. Januar 1600 und dem Datum sowie der Uhrzeit der Dateierstellung. Nachfolgende Rolloverdateien verwenden ebenfalls dieses Format. Anhand des langen ganzzahligen Werts können Sie die neueste Datei ermitteln. Das folgende Beispiel veranschaulicht, wie Dateien in einem Szenario benannt werden, in dem die Option filename als C:\OutputFiles\MyOutput.xel angegeben wird:

  • Erste erstellte Datei: C:\OutputFiles\MyOutput_0_128500310259380000.xel

  • Erste Rolloverdatei: C:\OutputFiles\MyOutput_0_128505831770890000.xel

  • Zweite Rolloverdatei: C:\OutputFiles\MyOutput_0_132410772966237000.xel

Hinzufügen des Ziels zu einer Sitzung

Um das Ereignisdateiziel einer Sitzung für erweiterte Ereignisse hinzuzufügen, schließen Sie beim Erstellen oder Ändern einer Ereignissitzung die folgenden Anweisungen ein, wobei Sie file_name durch den gewünschten Dateinamen mit Pfad ersetzen:

ADD TARGET package0.event_file(
   SET filename='file_name.xel')

Überprüfen der Zielausgabe

Zum Überprüfen der sys.fn_xe_file_target_read_file-Funktion müssen Sie die Ausgabe des Dateiziels verwenden. Es empfiehlt sich, die Daten in XML umzuwandeln. Sie können die folgende Syntax verwenden, wobei Sie file_name durch den Dateinamen mit dem Pfad ersetzen, den Sie beim Hinzufügen des Ziels angegeben haben:

SELECT *, CAST(event_data AS XML) AS 'event_data_XML'
FROM sys.fn_xe_file_target_read_file('file_name*.xel', NULL, NULL, NULL)

Siehe auch

Verweis

sys.fn_xe_file_target_read_file (Transact-SQL)

CREATE EVENT SESSION (Transact-SQL)

ALTER EVENT SESSION (Transact-SQL)

Konzepte

Ziele für erweiterte Ereignisse von SQL Server