Compartilhar via


Destino de arquivo de evento

O destino de arquivo de evento é um destino que grava buffers completos em disco.

A tabela a seguir descreve as opções disponíveis para configurar o destino de arquivo de evento.

Opção

Valores permitidos

Descrição

filename

Qualquer cadeia de caracteres até 260 caracteres. Esse valor é necessário.

O local e nome do arquivo.

É possível usar qualquer extensão de nome de arquivo.

max_file_size

Qualquer inteiro de 64 bits. Esse valor é opcional.

O tamanho máximo de arquivo em megabytes (MB). Se max_file_size não for especificado, o arquivo crescerá até que o disco fique cheio. O tamanho de arquivo padrão é 1 GB.

max_file_size deve ser maior que o tamanho atual dos buffers de sessão. Se não for, o destino de arquivo não inicializará, reportando que max_file_size é inválido. Para exibir o tamanho atual dos buffers, consulte a coluna buffer_size na exibição de gerenciamento dinâmico sys.dm_xe_sessions.

Se o tamanho de arquivo padrão for menor do que o tamanho do buffer de sessão, é recomendável definir max_file_size com o valor especificado na coluna max_memory na exibição do catálogo sys.server_event_sessions.

Quando max_file_size é definido com um tamanho maior que o tamanho dos buffers de sessão, ele pode ser arredondado para baixo, para o múltiplo mais próximo do tamanho do buffer de sessão. Isso pode criar um arquivo de destino menor do que o valor especificado de max_file_size. Por exemplo, se o tamanho do buffer é 100 MB e max_file_size está definido como 150 MB, o tamanho de arquivo resultante é arredondado para baixo para 100 MB, porque um segundo buffer não caberia nos 50 MB restantes de espaço.

Se o tamanho de arquivo padrão for menor do que o tamanho do buffer de sessão, é recomendável definir max_file_size com o valor na coluna max_memory na exibição do catálogo sys.server_event_sessions.

max_rollover_files

Qualquer inteiro de 32 bits. Esse valor é opcional.

O número máximo de arquivos a serem retidos no sistema de arquivos.

increment

Qualquer inteiro de 32 bits. Esse valor é opcional.

O crescimento incremental, em megabytes (MB), para o arquivo. Se não for especificado, o valor padrão do incremento será duas vezes o tamanho do buffer de sessão.

Na primeira vez que um destino de arquivo de evento é criado, o nome de arquivo especificado é acrescentado com _0_ e um valor inteiro longo. O valor inteiro é calculado como o número de milissegundos entre 1o. de janeiro de 1600 e a data e a hora em que o arquivo foi criado. Os arquivos de substituição subsequentes também usam esse formato. Examinando o valor do inteiro longo, você pode determinar o arquivo mais atual. O seguinte exemplo ilustra como arquivos são nomeados em um cenário no qual você especifica a opção filename como C:\OutputFiles\MyOutput.xel:

  • primeiro arquivo criado - C:\OutputFiles\MyOutput_0_128500310259380000.xel

  • primeiro arquivo de substituição - C:\OutputFiles\MyOutput_0_128505831770890000.xel

  • segundo arquivo de substituição - C:\OutputFiles\MyOutput_0_132410772966237000.xel

Adicionando o destino a uma sessão

Para adicionar o destino do arquivo de evento a uma sessão Eventos Estendidos, inclua as seguintes instruções ao criar ou alterar uma sessão de evento, substituindo file_name pelo nome e o caminho de arquivo desejados:

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

Revisando a saída de destino

Para examinar a saída de destino do arquivo, use a função sys.fn_xe_file_target_read_file. Nós recomendamos que você converta os dados como XML. Você pode usar a seguinte sintaxe, substituindo file_name pelo nome e o caminho do arquivo especificado quando você adicionou o destino:

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

Consulte também

Referência

sys.fn_xe_file_target_read_file (Transact-SQL)

CREATE EVENT SESSION (Transact-SQL)

ALTER EVENT SESSION (Transact-SQL)

Conceitos

Destinos de eventos estendidos do SQL Server