Следы слушателя не пишут информацию о трассировке

StackOverflow https://stackoverflow.com/questions/9324085

Вопрос

public sealed class Logger
{
    private static TraceSource myTraceSource;

    private Logger()
    {
    }

    public static TraceSource Create()
    {
        if (myTraceSource == null)
            return myTraceSource = new TraceSource("myTraceSource");
        else
            return myTraceSource;
    }

    public static void WriteInfo(string message)
    {
        myTraceSource.TraceEvent(TraceEventType.Information, 0, message);
        myTraceSource.Flush();
    }

    public static void WriteError(Exception ex)
    {
        myTraceSource.TraceEvent(TraceEventType.Error, 1, ex.Message);
        myTraceSource.Flush();            
    }

    public static void WriteError(string message)
    {
        myTraceSource.TraceEvent(TraceEventType.Error, 1, message);
        myTraceSource.Flush();
    }

    public static void WriteWarning(string message)
    {
        myTraceSource.TraceEvent(TraceEventType.Warning, 2, message);
        myTraceSource.Flush();
    }

    public static void AddListener(TraceListener listener)
    {
        myTraceSource.Listeners.Add(listener);
    }

    public static void Close()
    {
        if (myTraceSource != null)
        {
            myTraceSource.Flush();
            myTraceSource.Close();
        }
    }       
}

Ниже приведен код для инициализации источника трассировки и добавления прослушивателя

Logger.Create();
TextWriterTraceListener myTextListener = new TextWriterTraceListener(LogCompletePath);
Logger.AddListener(myTextListener);
Logger.WriteError("error");

Примечание я не положил SytemDiagnostic отметьте appconfig Как я хочу сделать это в коде.

Это было полезно?

Решение

Получил ответ на другом форуме. Я забыл упомянуть уровень исходного уровня, и по умолчанию он настроен на выключение

 return myTraceSource = new TraceSource("myTraceSource", SourceLevels.All); 
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top