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();
            }
        }