Я пытаюсь использовать System.Diagnostics для того, чтобы сделать очень простое ведение журнала. Я полагаю, что я буду использовать то, что в поле, а не принимать дополнительную зависимость, например Log4Net или EntLib.
Я настроен, отслеживание работает чудесно. Фрагмент кода:
Trace.TraceInformation("Hello World")
App.config:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<system.diagnostics>
<trace autoflush="true" indentsize="4">
<listeners>
<add name="TraceListener" type="System.Diagnostics.TextWriterTraceListener" initializeData="Trace.log" traceOutputOptions="DateTime" />
<remove name="Default" />
</listeners>
</trace>
</system.diagnostics>
</configuration>
и мой маленький "Hello World" хорошо показывает мой файл Trace.log. Но теперь я хотел бы отключить отслеживание, поэтому я копаю в MSDN и нахожу Как настроить трассировочные переключатели. Я добавляю элемент <switches>
, и теперь мой app.config выглядит следующим образом:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<system.diagnostics>
<trace autoflush="true" indentsize="4">
<listeners>
<add name="TraceListener" type="System.Diagnostics.TextWriterTraceListener" initializeData="Trace.log" traceOutputOptions="DateTime" />
<remove name="Default" />
</listeners>
</trace>
<switches>
<add name="Data" value="0" />
</switches>
</system.diagnostics>
</configuration>
value="0"
должен отключить трассировку - по крайней мере, если вы затем следуете Как создать и инициализировать трассировочные переключатели, в котором говорится, что добавьте эту строку кода:
Dim dataSwitch As New BooleanSwitch("Data", "DataAccess module")
Это не имеет смысла для меня: мне просто нужно объявить экземпляр BooleanSwicth
для управления трассировкой (отключением) через файл .config? Должен ли я... использовать... объект где-то?
В любом случае, я уверен, что я пропустил что-то действительно очевидное где-то. Пожалуйста, помогите.
Как отключить отслеживание в app.config?