protected override void OnProcessorError(EventPattern <PipelineProcessorExceptionEventArgs> args) { PipelineTrace pipelineTrace = _traceStack.Peek(); Stack <ProcessorTrace> processorStack = pipelineTrace.ProcessorStack; ProcessorTrace processorTrace = processorStack.Pop(); pipelineTrace.Traces.Add(processorTrace); }
protected override void OnProcessorComplete(EventPattern <PipelineProcessorEventArgs> args) { PipelineTrace pipelineTrace = _traceStack.Peek(); Stack <ProcessorTrace> processorStack = pipelineTrace.ProcessorStack; ProcessorTrace processorTrace = processorStack.Pop(); switch (args.EventArgs.PipelineContext) { case PropertyContext processorContext: processorTrace.Faulted = processorContext.Faulted; processorTrace.PostContext = JsonConvert.SerializeObject(processorContext.Context, Formatting.None, new JsonSerializerSettings { ReferenceLoopHandling = ReferenceLoopHandling.Ignore }); break; } pipelineTrace.Traces.Add(processorTrace); }
protected override void OnProcessorRun(EventPattern <PipelineProcessorEventArgs> args) { var trace = new ProcessorTrace { ProcessorType = args.EventArgs.ProcessorType }; switch (args.EventArgs.PipelineContext) { case PropertyContext processorContext: trace.PreContext = JsonConvert.SerializeObject(processorContext.Context, Formatting.None, new JsonSerializerSettings { ReferenceLoopHandling = ReferenceLoopHandling.Ignore }); break; } var pipelineStack = _traceStack.Peek(); var processorStack = pipelineStack.ProcessorStack; processorStack.Push(trace); }