Updated: June 24, 2016
Reads files that are created by the Extended Events asynchronous file target. One event, in XML format, is returned per row.
sys.fn_xe_file_target_read_file ( path, mdpath, initial_file_name, initial_offset )
The path to the files to read. path can contain wildcards and include the name of a file. path is nvarchar(260). There is no default. In the context of Azure SQL Database, this value is an HTTP URL to a file in Azure Storage.
The path to the metadata file that corresponds to the file or files specified by the path argument. mdpath is nvarchar(260). There is no default. Starting with SQL Server 2016, this parameter can be given as null.
The first file to read from path. initial_file_name is nvarchar(260). There is no default. If null is specified as the argument all the files found in path are read.
Used to specify last offset read previously and skips all events up to the offset (inclusive). Event enumeration starts after the offset specified. initial_offset is bigint. If null is specified as the argument the entire file will be read.
|Column name||Data type||Description|
|module_guid||uniqueidentifier||The event module GUID. Is not nullable.|
|package_guid||uniqueidentifier||The event package GUID. Is not nullable.|
|object_name||nvarchar(256)||The name of the event. Is not nullable.|
|event_data||nvarchar(max)||The event contents, in XML format. Is not nullable.|
|file_name||nvarchar(260)||The name of the file that contains the event. Is not nullable.|
|file_offset||bigint||The offset of the block in the file that contains the event. Is not nullable.|
Reading large result sets by executing sys.fn_xe_file_target_read_file in Management Studio may result in an error. Use the Results to File mode (Ctrl+Shift+F) to export large result sets to a file and read the file with another tool instead.
Requires VIEW SERVER STATE permission on the server.
The following example gets all the rows from all the files. In this example the file targets and metafiles are located in the trace folder on the C:\ drive.
SELECT * FROM sys.fn_xe_file_target_read_file('C:\traces\*.xel', 'C:\traces\metafile.xem', null, null);