Funzione OpenTraceFromRealTimeLoggerWithAllocationOptions (evntrace.h)

Crea una sessione di elaborazione della traccia collegata a una sessione ETW attiva in tempo reale.

Sintassi

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
);

Parametri

LoggerName

Nome della sessione di traccia eventi in tempo reale o NULL se si elaborano dati da un file di log. Specificare un valore per questo membro se si chiama OpenTraceFromRealTimeLoggerWithAllocationOptions per utilizzare i dati da una sessione in tempo reale.

Quando si chiama OpenTraceFromRealTimeLoggerWithAllocationOptions, se LogFileHeader non ènull, LoggerName deve essere NULL.

È possibile utilizzare gli eventi in tempo reale solo se il controller di traccia ha impostato il membro LogFileMode di EVENT_TRACE_PROPERTIES per includere il flag di EVENT_TRACE_REAL_TIME_MODE.

Solo gli utenti con privilegi amministrativi, gli utenti nel gruppo Performance Log Users e le applicazioni in esecuzione come LocalSystem, LocalService, NetworkService possono utilizzare eventi in tempo reale. Per concedere a un utente limitato la possibilità di utilizzare gli eventi in tempo reale, aggiungerli al gruppo Performance Log Users o chiamare EventAccessControl.

Options

Opzioni di configurazione per questa sessione di elaborazione. Per altri dettagli, vedere ETW_OPEN_TRACE_OPTIONS.

AllocationSize

Dimensione, in byte, della memoria che verrà preallocata per archiviare i buffer ETW durante l'elaborazione. Un'allocazione più grande ridurrà la necessità di singole chiamate di allocazione/gratuite a costi di utilizzo elevato della memoria coerente. Questa operazione verrà adattata verso l'alto fino a un minimo dello spazio totale del buffer della sessione ETW sottostante Real-Time per garantire che sia allocato sufficiente per il funzionamento di base. Se 0, verranno utilizzate le dimensioni predefinite.

MemoryPartitionHandle

Handle della partizione di memoria che deve essere utilizzata per le allocazioni di memoria per questa sessione di elaborazione. Se NULL, verrà usata la partizione di memoria del processo. Per altre informazioni, vedere MemExtendedParameterPartitionHandle.

LogFileHeader

Informazioni sull'intestazione per il file di log. Per altri dettagli, vedere TRACE_LOGFILE_HEADER.

Valore restituito

TRACEHANDLE utilizzato per identificare questa sessione di elaborazione. In genere passato a ProcessTrace per iniziare l'elaborazione e per CloseTrace alla fine dell'elaborazione.

Osservazioni

Dopo aver chiamato ProcessTrace sul TRACEHANDLE restituito, questo riceverà i buffer dalla sessione ETW mentre vengono scaricati e iniziano immediatamente a elaborarli e chiamando i callback specificati nelle opzioni. Questo comportamento è identico a OpenTraceFromRealTime, ad eccezione del fatto che consente la personalizzazione delle allocazioni di memoria per la sessione di elaborazione.

Fabbisogno

Requisito Valore
client minimo supportato Windows 11 2022 Update
server minimo supportato Windows Server 2022
piattaforma di destinazione Finestre
intestazione evntrace.h
libreria Advapi32.dll
dll Sechost.dll in Windows 8.1 e Windows Server 2012 R2; Advapi32.dll in Windows 8, Windows Server 2012, Windows 7, Windows Server 2008 R2, Windows Server 2008, Windows Vista e Windows XP