Compartilhar via


Função OpenTraceFromRealTimeLoggerWithAllocationOptions (evntrace.h)

Cria uma sessão de processamento de rastreamento anexada a uma sessão ETW ativa em tempo real.

Sintaxe

ETW_APP_DECLSPEC_DEPRECATED PROCESSTRACE_HANDLE WMIAPI OpenTraceFromRealTimeLoggerWithAllocationOptions(
  PCWSTR                       LoggerName,
  const ETW_OPEN_TRACE_OPTIONS *Options,
  ULONG_PTR                    AllocationSize,
  HANDLE                       MemoryPartitionHandle,
  TRACE_LOGFILE_HEADER         *LogFileHeader
);

Parâmetros

LoggerName

Nome da sessão de rastreamento de evento em tempo real ou NULL se estiver processando dados de um arquivo de log. Especifique um valor para esse membro se você estiver chamando OpenTraceFromRealTimeLoggerWithAllocationOptions para consumir dados de uma sessão em tempo real.

Ao chamar OpenTraceFromRealTimeLoggerWithAllocationOptions, se LogFileHeader não for NULL, LoggerName deverá ser NULL.

Você só poderá consumir eventos em tempo real se o controlador de rastreamento tiver definido o logFileMode membro do EVENT_TRACE_PROPERTIES para incluir o sinalizador de EVENT_TRACE_REAL_TIME_MODE.

Somente usuários com privilégios administrativos, usuários no grupo Usuários de Log de Desempenho e aplicativos em execução como LocalSystem, LocalService, NetworkService podem consumir eventos em tempo real. Para conceder a um usuário restrito a capacidade de consumir eventos em tempo real, adicione-os ao grupo Usuários do Log de Desempenho ou chame EventAccessControl.

Options

Opções de configuração para esta sessão de processamento. Consulte ETW_OPEN_TRACE_OPTIONS para obter mais detalhes.

AllocationSize

O tamanho, em bytes, da memória que será pré-alocada para armazenar buffers ETW durante o processamento. Uma alocação maior reduzirá a necessidade de alocação individual/chamadas gratuitas ao custo de maior uso consistente de memória. Isso será ajustado para cima para um mínimo do espaço total do buffer da sessão ETW Real-Time subjacente para garantir que o suficiente seja alocado para o funcionamento básico. Se 0, o tamanho padrão será usado.

MemoryPartitionHandle

O identificador para a Partição de Memória que deve ser usado para alocações de memória para esta sessão de processamento. Se NULL, a Partição de Memória do processo será usada. Consulte MemExtendedParameterPartitionHandle para obter mais detalhes.

LogFileHeader

Informações de cabeçalho para o arquivo de log. Consulte TRACE_LOGFILE_HEADER para obter mais detalhes.

Valor de retorno

Um TRACEHANDLE usado para identificar essa sessão de processamento. Normalmente, passado para ProcessTrace para iniciar o processamento e CloseTrace para encerrar o processamento.

Observações

Depois que ProcessTrace for chamado noTRACEHANDLE retornado, isso receberá buffers da sessão ETW à medida que forem liberados e começarão imediatamente a processá-los e chamar os retornos de chamada especificados nas Opções. Isso é idêntico ao OpenTraceFromRealTime, exceto pelo fato de permitir a personalização das alocações de memória para a sessão de processamento.

Requisitos

Requisito Valor
de cliente com suporte mínimo Atualização do Windows 11 2022
servidor com suporte mínimo Windows Server 2022
da Plataforma de Destino Windows
cabeçalho evntrace.h
biblioteca Advapi32.dll
de DLL Sechost.dll no Windows 8.1 e no Windows Server 2012 R2; Advapi32.dll no Windows 8, Windows Server 2012, Windows 7, Windows Server 2008 R2, Windows Server 2008, Windows Vista e Windows XP