Como: Log Exceptions in Visual Basic
Você pode usar os objetos My.Application.Log e My.Log para criar um log de informações sobre exceções que ocorrem em seu aplicativo.Esses exemplos mostram como usar o método My.Application.Log.WriteException para registrar exceções que você tratou explicitamente com catch e exceções que não estão tratadas.
Para registrar informações de rastreamento, use o método My.Application.Log.WriteEntry.Para mais informações, consulte WriteEntry.
Para registrar uma exceção manipulada
Crie o método que irá gerar as informações da exceção.
Public Sub ExceptionLogTest(ByVal fileName As String) End Sub
Use um bloco Try...Catch para capturar a exceção.
Try Catch ex As Exception End Try
Coloque o código que poderá gerar uma exceção no bloco Try.
Tire os comentários das linhas Dim e MsgBox para causar uma exceção NullReferenceException.
' Code that might generate an exception goes here. ' For example: ' Dim x As Object ' MsgBox(x.ToString)
No bloco Catch, use o método My.Application.Log.WriteException para gravar as informações de exceção.
My.Application.Log.WriteException(ex, TraceEventType.Error, "Exception in ExceptionLogTest " & "with argument " & fileName & ".")
O exemplo a seguir mostra o código completo para registrar uma exceção manipulada.
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
Para registrar uma exceção não tratada
Tenha um projeto selecionado no Solution Explorer.No menu Project, escolha Properties.
Clique na guia Application.
Clique no botão View Application Events para abrir o Editor de Código.
Isso abre o arquivo ApplicationEvents.vb.
Deixe o arquivo ApplicationEvents.vb aberto no Editor do Código.No menu General, escolha MyApplication Events.
No menu Declarations, escolha UnhandledException.
Gera a aplicativo do UnhandledException evento antes do aplicativo principal executar.
Adicione o método My.Application.Log.WriteException para o manipulador de eventos UnhandledException.
My.Application.Log.WriteException(e.Exception, TraceEventType.Critical, "Application shut down at " & My.Computer.Clock.GmtTime.ToString)
O exemplo a seguir mostra o código completo para registrar uma exceção não tratada.
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
Consulte também
Tarefas
Como: gravar mensagens de Log (Visual Basic)
Passo a passo: Determinar onde My.Application.Log grava informações (Visual Basic)
Passo a passo: Alterando onde My.Application.Log grava informações (Visual Basic)
Referência
Microsoft.VisualBasic.Logging.Log