Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Вы можете использовать My.Application.Log и My.Log объекты для регистрации сведений о событиях, происходящих в приложении. В этом пошаговом руководстве показано, как переопределить параметры по умолчанию и заставить объект Log записываться в других слушателей логов.
Предпосылки
Объект Log может записывать сведения в несколько прослушивателей журналов. Перед изменением конфигурации необходимо определить текущую конфигурацию прослушивателей журналов. Дополнительные сведения см. в пошаговом руководстве. Определение места записи данных My.Application.Log.
Вы можете просмотреть инструкции: запись сведений о событии в текстовый файл или практическое руководство: запись в журнал событий приложения.
Добавление прослушивателей
Щелкните правой кнопкой мыши app.config в обозревателе решений и выберите "Открыть".
-или-
Если нет файла app.config:
В меню "Проект" выберите "Добавить новый элемент".
В диалоговом окне "Добавление нового элемента" выберите файл конфигурации приложения.
Нажмите кнопку Добавить.
Найдите раздел
<listeners>, расположенный под разделом<source>с атрибутомname"DefaultSource", в разделе<sources>. Этот<sources>раздел находится в<system.diagnostics>разделе в разделе верхнего уровня<configuration>.Добавьте эти элементы в этот
<listeners>раздел.<!-- Uncomment to connect the application file log. --> <!-- <add name="FileLog" /> --> <!-- Uncomment to connect the event log. --> <!-- <add name="EventLog" /> --> <!-- Uncomment to connect the event log. --> <!-- <add name="Delimited" /> --> <!-- Uncomment to connect the XML log. --> <!-- <add name="XmlWriter" /> --> <!-- Uncomment to connect the console log. --> <!-- <add name="Console" /> -->Раскомментируйте прослушиватели журналов, которые вы хотите, чтобы получали сообщения
Log.Найдите раздел
<sharedListeners>в разделе<system.diagnostics>, в разделе верхнего уровня<configuration>.Добавьте эти элементы в этот
<sharedListeners>раздел.<add name="FileLog" type="Microsoft.VisualBasic.Logging.FileLogTraceListener, Microsoft.VisualBasic, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" initializeData="FileLogWriter" /> <add name="EventLog" type="System.Diagnostics.EventLogTraceListener, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" initializeData="sample application"/> <add name="Delimited" type="System.Diagnostics.DelimitedListTraceListener, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" initializeData="c:\temp\sampleDelimitedFile.txt" traceOutputOptions="DateTime" /> <add name="XmlWriter" type="System.Diagnostics.XmlWriterTraceListener, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" initializeData="c:\temp\sampleLogFile.xml" /> <add name="Console" type="System.Diagnostics.ConsoleTraceListener, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" initializeData="true" />Содержимое файла app.config должно совпадать со следующим XML-кодом:
<?xml version="1.0" encoding="utf-8" ?> <configuration> <system.diagnostics> <sources> <!-- This section configures My.Application.Log --> <source name="DefaultSource" switchName="DefaultSwitch"> <listeners> <add name="FileLog"/> <!-- Uncomment to connect the application file log. --> <!-- <add name="FileLog" /> --> <!-- Uncomment to connect the event log. --> <!-- <add name="EventLog" /> --> <!-- Uncomment to connect the event log. --> <!-- <add name="Delimited" /> --> <!-- Uncomment to connect the XML log. --> <!-- <add name="XmlWriter" /> --> <!-- Uncomment to connect the console log. --> <!-- <add name="Console" /> --> </listeners> </source> </sources> <switches> <add name="DefaultSwitch" value="Information" /> </switches> <sharedListeners> <add name="FileLog" type="Microsoft.VisualBasic.Logging.FileLogTraceListener, Microsoft.VisualBasic, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" initializeData="FileLogWriter" /> <add name="EventLog" type="System.Diagnostics.EventLogTraceListener, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" initializeData="sample application"/> <add name="Delimited" type="System.Diagnostics.DelimitedListTraceListener, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" initializeData="c:\temp\sampleDelimitedFile.txt" traceOutputOptions="DateTime" /> <add name="XmlWriter" type="System.Diagnostics.XmlWriterTraceListener, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" initializeData="c:\temp\sampleLogFile.xml" /> <add name="Console" type="System.Diagnostics.ConsoleTraceListener, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" initializeData="true" /> </sharedListeners> </system.diagnostics> </configuration>
Изменение конфигурации прослушивателя
Найдите элемент
<add>прослушивателя в разделе<sharedListeners>.Атрибут
typeзадает имя типа прослушивателя. Этот тип должен наследоваться от TraceListener класса. Используйте строго именованное имя типа, чтобы убедиться, что используется правильный тип. Дополнительные сведения см. в разделе "Ссылка на строго именованный тип" ниже.Некоторые типы, которые можно использовать:
Прослушиватель Microsoft.VisualBasic.Logging.FileLogTraceListener , который записывается в журнал файлов.
System.Diagnostics.EventLogTraceListener Прослушиватель, который записывает сведения в журнал событий компьютера, указанный параметром
initializeData.Прослушиватели System.Diagnostics.DelimitedListTraceListener и System.Diagnostics.XmlWriterTraceListener, которые записывают в файл, указанный в параметре
initializeData.Прослушиватель System.Diagnostics.ConsoleTraceListener, записывающий в консоль командной строки.
Сведения о том, где записывают информацию другие типы прослушивателей журналов, см. в документации данного типа.
Когда приложение создает объект прослушивателя журнала, он передает
initializeDataатрибут в качестве параметра конструктора. Значение атрибутаinitializeDataзависит от прослушивателя трассировки.После создания прослушивателя журнала приложение задает свойства прослушивателя. Эти свойства определяются другими атрибутами в элементе
<add>. Дополнительные сведения о свойствах конкретного прослушивателя см. в документации по типу прослушивателя.
Ссылка на строго именованный тип
Чтобы убедиться, что правильный тип используется для прослушивателя журналов, обязательно используйте полное имя типа и строго именованное имя сборки. Синтаксис строго именованного типа выглядит следующим образом:
< имя типа>, <имя сборки>, <номер версии>, <культура>, <строгое имя>
В этом примере кода показано, как определить строго именованное имя типа для полностью квалифицированного типа — System.Diagnostics.FileLogTraceListener в данном случае.
Public Sub DisplayStrongName() Dim t As Type = GetType(Logging.FileLogTraceListener) MsgBox(t.FullName & ", " & t.Assembly.FullName) End SubЭто выходные данные, которые можно использовать для уникальной ссылки на строго именованный тип, как описано выше в процедуре "Добавление прослушивателей".
Microsoft.VisualBasic.Logging.FileLogTraceListener, Microsoft.VisualBasic, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a