public void WhenUsingCustomSinkAndMultipleEvents() { string fileName = "ProvidedCustomSink.log"; File.Delete(fileName); var logger = MockEventSource.Logger; IEnumerable <string> entries = null; using (var eventListener = new ObservableEventListener()) { try { eventListener.LogToMockFlatFile(fileName, "==-=="); eventListener.EnableEvents(logger, System.Diagnostics.Tracing.EventLevel.LogAlways, Keywords.All); logger.LogSomeMessage("some message"); logger.LogSomeMessage("some message2"); logger.LogSomeMessage("some message3"); entries = FlatFileHelper.PollUntilTextEventsAreWritten(fileName, 3, "==-=="); } finally { eventListener.DisableEvents(logger); } } Assert.IsTrue(File.Exists(fileName)); Assert.AreEqual <int>(3, entries.Count()); Assert.IsNotNull(entries.SingleOrDefault(e => e.Contains("Payload : [message : some message]"))); Assert.IsNotNull(entries.SingleOrDefault(e => e.Contains("Payload : [message : some message2]"))); Assert.IsNotNull(entries.SingleOrDefault(e => e.Contains("Payload : [message : some message3]"))); }
public void WhenMultipleCustomSinksSubscribing() { string fileName1 = "mockFlatFileMutiple.log"; File.Delete(fileName1); string fileName2 = "flatFileMultiple.log"; File.Delete(fileName2); var validConnectionString = System.Configuration.ConfigurationManager.ConnectionStrings["valid"].ConnectionString; DatabaseHelper.CleanLoggingDB(validConnectionString); var logger = MockEventSource.Logger; string message = string.Concat("Message ", Guid.NewGuid()); string message2 = string.Concat("Message2 ", Guid.NewGuid()); IEnumerable <string> entries = null; IEnumerable <string> entries2 = null; using (var eventListener = new ObservableEventListener()) { try { eventListener.LogToMockFlatFile(fileName1, "==-=="); eventListener.LogToFlatFile(fileName2, new EventTextFormatter("--==--")); eventListener.LogToSqlDatabase("testInstance", validConnectionString, "Traces", TimeSpan.Zero, 1); eventListener.LogToCustomSqlDatabase("testCustom", validConnectionString); eventListener.EnableEvents(logger, System.Diagnostics.Tracing.EventLevel.LogAlways, Keywords.All); logger.LogSomeMessage(message); logger.LogSomeMessage(message2); entries = FlatFileHelper.PollUntilTextEventsAreWritten(fileName1, 2, "==-=="); entries2 = FlatFileHelper.PollUntilTextEventsAreWritten(fileName2, 2, "--==--"); } finally { eventListener.DisableEvents(logger); } } Assert.IsTrue(File.Exists(fileName1)); Assert.AreEqual <int>(2, entries.Count()); StringAssert.Contains(entries.First().ToString(), message); StringAssert.Contains(entries.Last().ToString(), message2); Assert.IsTrue(File.Exists(fileName2)); Assert.AreEqual <int>(2, entries.Count()); StringAssert.Contains(entries.First().ToString(), message); StringAssert.Contains(entries.Last().ToString(), message2); var dt = DatabaseHelper.GetLoggedTable(validConnectionString); Assert.AreEqual(4, dt.Rows.Count); }