public static TracerBuilder UseEventSource(this TracerBuilder builder, EventSourceCollectorOption option) { builder.AddAdapter(tracer => { var collector = new EventSourceAdapter(tracer, option.ConvertFunc, option.IsEnableFunc); foreach (var(ev, evoption) in option.Events) { collector.Add(ev, evoption); } return(collector); }); return(builder); }
public static TracerBuilder UseEventSource(this TracerBuilder builder, IEnumerable <KeyValuePair <EventSource, EventLevel> > events, Func <EventWrittenEventArgs, Event> convertFunc = null) { builder.AddAdapter(tracer => { var collector = new EventSourceAdapter(tracer, convertFunc); foreach (var pair in events) { collector.Add(pair.Key, new EventEnableOption() { Level = pair.Value }); } return(collector); }); return(builder); }