public void SelfDiagnosticsConfigRefresher_CaptureAsConfigured() { try { CreateConfigFile(); using var configRefresher = new SelfDiagnosticsConfigRefresher(); // Emitting event of EventLevel.Error OpenTelemetrySdkEventSource.Log.SpanProcessorException("Event string sample", "Exception string sample"); int bufferSize = 512; byte[] actualBytes = ReadFile(bufferSize); string logText = Encoding.UTF8.GetString(actualBytes); Assert.StartsWith(MessageOnNewFileString, logText); // The event was captured string logLine = logText.Substring(MessageOnNewFileString.Length); string logMessage = ParseLogMessage(logLine); string expectedMessage = "Unknown error in SpanProcessor event '{0}': '{1}'.{Event string sample}{Exception string sample}"; Assert.StartsWith(expectedMessage, logMessage); } finally { CleanupConfigFile(); } }
public void SelfDiagnosticsConfigRefresher_OmitAsConfigured() { try { CreateConfigFile(); using var configRefresher = new SelfDiagnosticsConfigRefresher(); // Emitting event of EventLevel.Warning OpenTelemetrySdkEventSource.Log.SpanProcessorQueueIsExhausted(); int bufferSize = 512; byte[] actualBytes = ReadFile(bufferSize); string logText = Encoding.UTF8.GetString(actualBytes); this.output.WriteLine(logText); // for debugging in case the test fails Assert.StartsWith(MessageOnNewFileString, logText); // The event was omitted Assert.Equal('\0', (char)actualBytes[MessageOnNewFile.Length]); } finally { CleanupConfigFile(); } }