Практическое руководство. Запись в журнал сведений об исключениях в Visual Basic
Объекты My.Application.Log
и My.Log
можно использовать для записи в журнал сведений об исключениях, возникающих в приложении. Эти примеры демонстрируют применение метода My.Application.Log.WriteException
для регистрации явно перехваченных исключений и исключений, которые не обрабатываются.
Для записи сведений в журнал используйте метод My.Application.Log.WriteEntry
. Дополнительные сведения см. в разделе WriteEntry.
Запись обработанного исключения в журнал
Создайте метод, который будет генерировать сведения об исключении.
Public Sub ExceptionLogTest(ByVal fileName As String) End Sub
Воспользуйтесь блоком
Try...Catch
для перехвата исключения.Try Catch ex As Exception End Try
Поместите код, который может генерировать исключение, в блок
Try
.Раскомментируйте строки
Dim
иMsgBox
, чтобы вызвать исключение NullReferenceException.' Code that might generate an exception goes here. ' For example: ' Dim x As Object ' MsgBox(x.ToString)
В блоке
Catch
для записи сведений об исключении используйте методMy.Application.Log.WriteException
.My.Application.Log.WriteException(ex, TraceEventType.Error, "Exception in ExceptionLogTest " & "with argument " & fileName & ".")
В следующем примере показан полный код для записи обработанного исключения в журнал.
Public Sub ExceptionLogTest(ByVal fileName As String) Try ' Code that might generate an exception goes here. ' For example: ' Dim x As Object ' MsgBox(x.ToString) Catch ex As Exception My.Application.Log.WriteException(ex, TraceEventType.Error, "Exception in ExceptionLogTest " & "with argument " & fileName & ".") End Try End Sub
Запись необработанного исключения в журнал
Выберите проект в Обозревателе решений. В меню Проект выберите Свойства.
Перейдите на вкладку Приложение .
Нажмите кнопку Просмотреть события приложения , чтобы открыть редактор кода.
Откроется файл ApplicationEvents.vb.
Откройте в редакторе кода файл ApplicationEvents.vb. В меню Общие выберите пункт События MyApplication.
В меню Объявления выберите пункт UnhandledException.
Приложение создает событие UnhandledException до запуска главного приложения.
Добавьте метод
My.Application.Log.WriteException
в обработчик событийUnhandledException
.My.Application.Log.WriteException(e.Exception, TraceEventType.Critical, "Application shut down at " & My.Computer.Clock.GmtTime.ToString)
В следующем примере показан полный код для записи необработанного исключения в журнал.
Private Sub MyApplication_UnhandledException( ByVal sender As Object, ByVal e As ApplicationServices.UnhandledExceptionEventArgs ) Handles Me.UnhandledException My.Application.Log.WriteException(e.Exception, TraceEventType.Critical, "Application shut down at " & My.Computer.Clock.GmtTime.ToString) End Sub
См. также
- Microsoft.VisualBasic.Logging.Log
- WriteEntry
- WriteException
- Работа с журналами приложения
- Практическое руководство. Запись сообщений в журнал
- Пошаговое руководство. Определение места записи информации для My.Application.Log
- Пошаговое руководство. Изменение места записи сведений для My.Application.Log