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)