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
참고하십시오
.NET