private static void ProcessEvent(TraceEvent e) { ++processedEvents; if (options.ProcessID != -1 && options.ProcessID != e.ProcessID) { return; } if (options.ThreadID != -1 && options.ThreadID != e.ThreadID) { return; } if (options.Events.Count > 0 && !options.Events.Contains(e.EventName)) { return; } if (options.ParsedRawFilter != null) { string s = e.AsRawString(); if (options.ParsedRawFilter.IsMatch(s)) { eventProcessor.TakeEvent(e, s); ++notFilteredEvents; } } else if (options.ParsedFilters.Count > 0) { foreach (var filter in options.ParsedFilters) { string payloadName = filter.Key; Regex valueRegex = filter.Value; object payloadValue = e.PayloadByName(payloadName); if (payloadValue == null) { continue; } if (valueRegex.IsMatch(payloadValue.ToString())) { eventProcessor.TakeEvent(e); ++notFilteredEvents; break; } } } else { eventProcessor.TakeEvent(e); ++notFilteredEvents; } }
private static void ProcessEvent(TraceEvent e) { ++processedEvents; if (options.ProcessID != -1 && options.ProcessID != e.ProcessID) { return; } if (options.ThreadID != -1 && options.ThreadID != e.ThreadID) { return; } if (options.Events.Count > 0 && !options.Events.Contains(e.EventName)) { return; } if (options.ParsedRawFilter != null) { string s = e.AsRawString(); if (options.ParsedRawFilter.IsMatch(s)) { TakeEvent(e, s); } } else if (options.ParsedFilters.Count > 0) { foreach (var filter in options.ParsedFilters) { if (filter.IsMatch(e)) { TakeEvent(e); break; } } } else { } { TakeEvent(e); } }
public void TakeEvent(TraceEvent e) { TakeEvent(e, e.AsRawString()); }