public IPerformanceMetricReader GetReader() { using (var source = new ETWTraceEventSource(_etlPath)) { if (source.EventsLost > 0) throw new Exception($"Events were lost in trace '{_etlPath}'"); var evaluationContext = new EtwPerformanceMetricEvaluationContext(_etlPath, source, _tests, _project.RunId); try { source.Process(); return evaluationContext; } catch { evaluationContext.Dispose(); throw; } } }
public IPerformanceMetricReader GetReader() { using (var source = new ETWTraceEventSource(_etlPath)) { if (source.EventsLost > 0) { throw new Exception($"Events were lost in trace '{_etlPath}'"); } var evaluationContext = new EtwPerformanceMetricEvaluationContext(_etlPath, source, _tests, _project.RunId); try { source.Process(); return(evaluationContext); } catch { evaluationContext.Dispose(); throw; } } }