public void WhenUsingCustomFormatter() { string fileName = "FlatFileInProcCustomFormatter.log"; File.Delete(fileName); string header = "----------"; var logger = TestEventSourceNonTransient.Logger; var formatter = new CustomFormatterWithWait(header); formatter.Detailed = EventLevel.LogAlways; IEnumerable <string> entries = null; TestScenario.With1Listener( logger, listener => { listener.LogToFlatFile(fileName, formatter); listener.EnableEvents(logger, EventLevel.LogAlways); logger.EventWithPayload("payload1", 100); entries = FlatFileHelper.PollUntilTextEventsAreWritten(fileName, 1, header); }); StringAssert.Contains(entries.First(), "Mock SourceId"); StringAssert.Contains(entries.First(), "Mock EventId"); StringAssert.Contains(entries.First(), "Payload : [payload1 : payload1] [payload2 : 100]"); }
public void WhenUsingCustomFormatterProgramatically() { string fileName = "FlatFileCustomFormatterProgrammatic.log"; File.Delete(fileName); var logger = MockEventSourceOutProc.Logger; CustomFormatterWithWait formatter = new CustomFormatterWithWait(); formatter.Detailed = System.Diagnostics.Tracing.EventLevel.LogAlways; formatter.Header = "---------------"; formatter.DateTimeFormat = "d"; IEnumerable <string> entries = null; EventSourceSettings settings = new EventSourceSettings("MockEventSourceOutProc", null, System.Diagnostics.Tracing.EventLevel.Critical); var subject = new EventEntrySubject(); subject.LogToFlatFile(fileName, formatter); SinkSettings sinkSettings = new SinkSettings("flatFileSink", subject, new List <EventSourceSettings>() { { settings } }); List <SinkSettings> sinks = new List <SinkSettings>() { { sinkSettings } }; TraceEventServiceConfiguration svcConfiguration = new TraceEventServiceConfiguration(sinks); using (TraceEventService collector = new TraceEventService(svcConfiguration)) { try { collector.Start(); logger.Critical("some message using formatter"); entries = FlatFileHelper.PollUntilTextEventsAreWritten(fileName, 1, "---------------"); } finally { collector.Stop(); } } StringAssert.Contains(entries.First(), "Mock SourceId"); StringAssert.Contains(entries.First(), "Mock EventId"); StringAssert.Contains(entries.First(), "Payload : [message : some message using formatter]"); }