Регистрация обработки исключений в плоском файле

Я использую Microsoft Enterprise Library 5.0 для обработки исключений в asp.net. Ошибки сохраняются в средстве просмотра событий системы. Вместо средства просмотра событий мне нужно хранить эти ошибки в файле журнала (текстовом файле) с помощью Enterprise Library. Как я могу реализовать это?


person Kanvas    schedule 23.11.2011    source источник


Ответы (2)


Я предполагаю, что у вас есть такая конфигурация для журнала событий:

        <add name="Event Log Listener" type="Microsoft.Practices.EnterpriseLibrary.Logging.TraceListeners.FormattedEventLogTraceListener, Microsoft.Practices.EnterpriseLibrary.Logging, Version=5.0.505.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
            listenerDataType="Microsoft.Practices.EnterpriseLibrary.Logging.Configuration.FormattedEventLogTraceListenerData, Microsoft.Practices.EnterpriseLibrary.Logging, Version=5.0.505.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
            source="Enterprise Library Logging" formatter="Text Formatter"
            log="" machineName="." traceOutputOptions="None" />

Просто замените эту конфигурацию чем-то для плоского файла. Например.:

        <add name="Flat File Trace Listener" type="Microsoft.Practices.EnterpriseLibrary.Logging.TraceListeners.FlatFileTraceListener, Microsoft.Practices.EnterpriseLibrary.Logging, Version=5.0.505.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
            listenerDataType="Microsoft.Practices.EnterpriseLibrary.Logging.Configuration.FlatFileTraceListenerData, Microsoft.Practices.EnterpriseLibrary.Logging, Version=5.0.505.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
            fileName="trace.log" />

А затем измените свои категории, чтобы использовать новый «Прослушиватель трассировки плоских файлов». Если вы не используете последнюю версию, вам необходимо изменить указанную выше версию с 5.0.505.0 на 5.0.414.0.

Кроме того, вы можете использовать инструмент конфигурации EntLibConfig.exe, чтобы упростить внесение этих изменений, не беспокоясь о задействованном XML. Или используйте инструмент конфигурации для создания исходного XML, а затем вы можете вручную настроить XML в файле конфигурации.

Или, в качестве альтернативы, вы можете использовать Fluent API конфигурации для настройки ведения журнала с использованием кода вместо конфигурации.

person Randy supports Monica    schedule 23.11.2011

В чем твоя проблема с этим?

По сути, вам нужен новый приемник с именем File, который записывает журнал в плоский файл и соответствующим образом его настраивает. Это все.

Вот хорошая статья, посвященная ведению журналов в Enterprise Library, хотя и немного устаревшая.

А вот примеры и практические занятия от Microsoft, который включает в себя также примеры ведения журнала.

person Alexander Galkin    schedule 23.11.2011
comment
да, я могу реализовать это с помощью практической лабораторной помощи, но все исключения связаны с входом в программу просмотра событий. мне нужно реализовать это в плоском файле. - person Kanvas; 23.11.2011
comment
Я просто хочу узнать о части конфигурации. Я уже написал свой код, но просто хочу настроить параметры, чтобы я мог записать это в плоский файл вместо средства просмотра событий. - person Kanvas; 23.11.2011