Как настроить фильтрацию сообщений через коммутаторы - PullRequest
0 голосов
/ 02 февраля 2011

Вот мой код

 public static TraceSource TS = new TraceSource("myTraceSrc", SourceLevels.All);
    static void Main(string[] args)
    {

        TS.TraceInformation("Hello Information Trace from Main");
        TS.TraceEvent(System.Diagnostics.TraceEventType.Error, 1, "Hello Error Trace from Main");

}

вот файл конфигурации

<system.diagnostics>
    <trace autoflush="true" />
    <sources>
        <source name="myTraceSrc" switchName="switch1" >
            <listeners>
                <add type="System.Diagnostics.TextWriterTraceListener" name="myLocalListener" initializeData="c:\WasteBin\Test.Log"  />
                <add name="consoleListener" />
            </listeners>
        </source>
    </sources>
    <sharedListeners>
        <add type="System.Diagnostics.ConsoleTraceListener" name="consoleListener" traceOutputOptions="None" />
        <add type="System.Diagnostics.EventTypeFilter" name="EventListener" traceOutputOptions="None" />
    </sharedListeners>
    <switches>
        <add name="switch1" value="all"  />
    </switches>
</system.diagnostics>

Я хочу, чтобы все мои сообщения отправлялись в консоль и текстовый файл, но в журнал событий должна входить только ошибка. Как я могу настроить его, используя настройки конфигурации?

1 Ответ

0 голосов
/ 02 февраля 2011

Попробуйте использовать библиотеки журналов (Nlog, log4net) для своих задач. У них есть фильтрация и маршрутизация сообщений.

...