public UserTraceCollector(int pid, TextWriter output, TraceOutputOptions options) : base(CreateUserTraceEventSession(), output) { TraceEventParser parser = new MicrosoftWindowsRPCTraceEventParser(traceSession.Source); ITraceEventHandler eventHandler = new RpcTraceEventHandler(pid, output, options); eventHandler.SubscribeToEvents(parser); eventHandlers.Add(eventHandler); }
public void SubscribeToSession(TraceEventSession session) { var rpcParser = new MicrosoftWindowsRPCTraceEventParser(session.Source); rpcParser.RpcClientCallStart += RpcClientCallStart; rpcParser.RpcClientCallStop += RpcClientCallStop; rpcParser.RpcServerCallStart += RpcServerCallStart; rpcParser.RpcServerCallStop += RpcServerCallStop; session.EnableProvider(MicrosoftWindowsRPCTraceEventParser.ProviderGuid, TraceEventLevel.Informational); }