Nasıl Yapılır: Visual Basic'te Günlük Özel Durumları

My.Application.LogMy.Log ve nesnelerini kullanarak uygulamanızda oluşan özel durumlar hakkındaki bilgileri günlüğe kaydedebilirsiniz. Bu örnekler, açıkça yakaladığınız özel durumları ve işlenmeyen özel durumları günlüğe kaydetmek için yönteminin nasıl kullanılacağını My.Application.Log.WriteException gösterir.

İzleme bilgilerini günlüğe kaydetmek için yöntemini kullanın My.Application.Log.WriteEntry . Daha fazla bilgi için bkz. WriteEntry.

İşlenen özel durumu günlüğe kaydetmek için

  1. Özel durum bilgilerini oluşturacak yöntemi oluşturun.

    Public Sub ExceptionLogTest(ByVal fileName As String)
    End Sub
    
  2. Özel durumu yakalamak için bir Try...Catch blok kullanın.

    Try
    Catch ex As Exception
    End Try
    
  3. Bir özel durum oluşturabilecek kodu bloğuna Try yerleştirin.

    Dim Özel NullReferenceException duruma neden olmak için ve MsgBox satırlarını açıklamayı kaldırın.

    ' Code that might generate an exception goes here.
    ' For example:
    '    Dim x As Object
    '    MsgBox(x.ToString)
    
  4. bloğunda Catch , özel durum bilgilerini yazmak için yöntemini kullanın My.Application.Log.WriteException .

    My.Application.Log.WriteException(ex,
        TraceEventType.Error,
        "Exception in ExceptionLogTest " &
        "with argument " & fileName & ".")
    

    Aşağıdaki örnekte, işlenen özel durumun günlüğe kaydedilmesine yönelik kodun tamamı gösterilmektedir.

    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
    

İşlenmeyen özel durumu günlüğe kaydetmek için

  1. Çözüm Gezgini'da bir projenin seçilmesini sağlayın. Proje menüsünde Özellikler'i seçin.

  2. Uygulama sekmesine tıklayın.

  3. Kod Düzenleyicisi'ni açmak için Uygulama Olaylarını Görüntüle düğmesine tıklayın.

    Bu işlem ApplicationEvents.vb dosyasını açar.

  4. ApplicationEvents.vb dosyasını Kod Düzenleyicisi'nde açın. Genel menüsünde, Uygulama Olayları'nı seçin.

  5. Bildirimler menüsünde UnhandledException'ı seçin.

    Uygulama, ana uygulama çalışmadan önce olayı tetikler UnhandledException .

  6. My.Application.Log.WriteException yöntemini olay işleyicisine UnhandledException ekleyin.

    My.Application.Log.WriteException(e.Exception,
        TraceEventType.Critical,
        "Application shut down at " &
        My.Computer.Clock.GmtTime.ToString)
    

    Aşağıdaki örnekte işlenmeyen özel durumun günlüğe kaydedilmesine yönelik kodun tamamı gösterilmektedir.

    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
    

Ayrıca bkz.