Pemecahan masalah: Pendengar Log (Visual Basic)
Anda dapat menggunakan objek My.Application.Log
dan My.Log
untuk mencatat informasi tentang peristiwa yang terjadi di aplikasi Anda.
Untuk menentukan pendengar log mana yang menerima pesan tersebut, lihat Panduan: Menentukan Di Mana My.Application.Log Menulis Informasi.
Objek Log
dapat menggunakan pemfilteran log untuk membatasi jumlah informasi yang dicatatnya. Jika filter salah dikonfigurasi, log mungkin berisi informasi yang salah. Untuk informasi selengkapnya tentang pemfilteran, lihat Panduan: Memfilter Output My.Application.Log.
Namun, jika log dikonfigurasi secara tidak benar, Anda mungkin memerlukan informasi lebih lanjut tentang konfigurasinya saat ini. Anda bisa mendapatkan informasi ini melalui properti TraceSource
lanjutan log.
Untuk menentukan pendengar log untuk objek Log dalam kode
Impor namespace System.Diagnostics pada permulaan file code. Untuk informasi selengkapnya, lihat Pernyataan Impor (.NET Namespace and Jenis).
Imports System.Diagnostics
Buat fungsi yang mengembalikan string yang terdiri dari informasi untuk masing-masing pendengar log.
Function GetListeners(ByVal listeners As TraceListenerCollection) As String Dim ret As String = "" For Each listener As TraceListener In listeners ret &= listener.Name Dim listenerType As Type = listener.GetType If listenerType Is GetType(DefaultTraceListener) Then Dim tmp As DefaultTraceListener = DirectCast(listener, DefaultTraceListener) ret &= ": Writes to the debug output." ElseIf listenerType Is GetType(Logging.FileLogTraceListener) Then Dim tmp As Logging.FileLogTraceListener = DirectCast(listener, Logging.FileLogTraceListener) ret &= ": Log filename: " & tmp.FullLogFileName ElseIf listenerType Is GetType(EventLogTraceListener) Then Dim tmp As EventLogTraceListener = DirectCast(listener, EventLogTraceListener) ret &= ": Event log name: " & tmp.EventLog.Log ElseIf listenerType Is GetType(XmlWriterTraceListener) Then Dim tmp As Diagnostics.XmlWriterTraceListener = DirectCast(listener, XmlWriterTraceListener) ret &= ": XML log" ElseIf listenerType Is GetType(ConsoleTraceListener) Then Dim tmp As ConsoleTraceListener = DirectCast(listener, ConsoleTraceListener) ret &= ": Console log" ElseIf listenerType Is GetType(DelimitedListTraceListener) Then Dim tmp As DelimitedListTraceListener = DirectCast(listener, DelimitedListTraceListener) ret &= ": Delimited log" Else ret &= ": Unhandled log type: " & listenerType.ToString End If ret &= vbCrLf Next Return ret End Function
Teruskan kumpulan pendengar jejak log ke fungsi
GetListeners
, dan tampilkan nilai yang dikembalikan.Dim ListenerCollection As TraceListenerCollection ListenerCollection = My.Application.Log.TraceSource.Listeners Dim ListenersText As String = GetListeners(ListenerCollection) MsgBox(ListenersText)
Untuk informasi selengkapnya, lihat TraceSource.
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk