EtwQueryTraceHandleByLoggerName

NTSTATUS __stdcall EtwQueryTraceHandleByLoggerName(_UNICODE_STRING *LoggerName, UINT64 *TraceHandle){
  _ESERVERSILO_GLOBALS *CurrentServerSiloGlobals; 
  _WMI_LOGGER_CONTEXT *v5; 
  __int16 LoggerId; 

  if( !LoggerName || !LoggerName->Buffer || !LoggerName->Length || !TraceHandle )
    return -1073741811;
  CurrentServerSiloGlobals = PsGetCurrentServerSiloGlobals((_KSPIN_LOCK *)LoggerName);
  v5 = EtwpAcquireLoggerContextByLoggerName(CurrentServerSiloGlobals->EtwSiloState, LoggerName, 0);
  if( !v5 )
    return -1073741162;
  *TraceHandle = 0i64;
  if( v5->LoggerId )
    LoggerId = v5->LoggerId;
  else
    LoggerId = -1;
  *(_WORD *)TraceHandle = LoggerId;
  EtwpReleaseLoggerContext(v5, 0);
  return 0;
}

Referenced by:

IopErrorLogThread
WdipSemGetLoggerIds
WmiQueryTraceInformation