Panduan: Mengubah Tempat My.Application.Log Menulis Informasi (Visual Basic)
Anda dapat menggunakan objek My.Application.Log
dan My.Log
untuk mencatat informasi tentang peristiwa yang terjadi di aplikasi Anda. Panduan ini menunjukkan cara mengambil alih pengaturan default dan membuat objek Log
menulis ke pendengar log lainnya.
Prasyarat
Objek Log
dapat menulis informasi ke beberapa listener log. Anda perlu menentukan konfigurasi listener log saat ini sebelum mengubah konfigurasi. Untuk informasi selengkapnya, lihat Panduan: Mengubah Tempat My.Application.Log Menulis Informasi.
Anda mungkin ingin meninjau Cara: Menulis Informasi Peristiwa ke File Teks atau Cara: Menulis ke Log Peristiwa Aplikasi.
Untuk menambahkan pendengar
Klik kanan app.config di Penjelajah Solusi dan pilih Buka.
- atau -
Jika tidak ada file app.config:
Pada menu Proyek, klik Tambahkan Item Baru.
Dari kotak dialog Tambahkan Item Baru, pilih File Konfigurasi Aplikasi.
Klik Tambahkan.
Temukan bagian
<listeners>
, di bagian<source>
dengan "DefaultSource" atributname
, yang terletak di bagian<sources>
. Bagian<sources>
berada di bagian<system.diagnostics>
, di bagian<configuration>
tingkat-atas.Tambahkan elemen-elemen ini ke bagian
<listeners>
tersebut.<!-- Uncomment to connect the application file log. --> <!-- <add name="FileLog" /> --> <!-- Uncomment to connect the event log. --> <!-- <add name="EventLog" /> --> <!-- Uncomment to connect the event log. --> <!-- <add name="Delimited" /> --> <!-- Uncomment to connect the XML log. --> <!-- <add name="XmlWriter" /> --> <!-- Uncomment to connect the console log. --> <!-- <add name="Console" /> -->
Hapus komentar pendengar log yang ingin Anda terima pesannya
Log
.Temukan bagian
<sharedListeners>
, di bagian<system.diagnostics>
, di bagian tingkat<configuration>
atas.Tambahkan elemen-elemen ini ke bagian
<sharedListeners>
tersebut.<add name="FileLog" type="Microsoft.VisualBasic.Logging.FileLogTraceListener, Microsoft.VisualBasic, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" initializeData="FileLogWriter" /> <add name="EventLog" type="System.Diagnostics.EventLogTraceListener, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" initializeData="sample application"/> <add name="Delimited" type="System.Diagnostics.DelimitedListTraceListener, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" initializeData="c:\temp\sampleDelimitedFile.txt" traceOutputOptions="DateTime" /> <add name="XmlWriter" type="System.Diagnostics.XmlWriterTraceListener, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" initializeData="c:\temp\sampleLogFile.xml" /> <add name="Console" type="System.Diagnostics.ConsoleTraceListener, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" initializeData="true" />
Konten file app.config harus mirip dengan XML berikut:
<?xml version="1.0" encoding="utf-8" ?> <configuration> <system.diagnostics> <sources> <!-- This section configures My.Application.Log --> <source name="DefaultSource" switchName="DefaultSwitch"> <listeners> <add name="FileLog"/> <!-- Uncomment to connect the application file log. --> <!-- <add name="FileLog" /> --> <!-- Uncomment to connect the event log. --> <!-- <add name="EventLog" /> --> <!-- Uncomment to connect the event log. --> <!-- <add name="Delimited" /> --> <!-- Uncomment to connect the XML log. --> <!-- <add name="XmlWriter" /> --> <!-- Uncomment to connect the console log. --> <!-- <add name="Console" /> --> </listeners> </source> </sources> <switches> <add name="DefaultSwitch" value="Information" /> </switches> <sharedListeners> <add name="FileLog" type="Microsoft.VisualBasic.Logging.FileLogTraceListener, Microsoft.VisualBasic, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" initializeData="FileLogWriter" /> <add name="EventLog" type="System.Diagnostics.EventLogTraceListener, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" initializeData="sample application"/> <add name="Delimited" type="System.Diagnostics.DelimitedListTraceListener, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" initializeData="c:\temp\sampleDelimitedFile.txt" traceOutputOptions="DateTime" /> <add name="XmlWriter" type="System.Diagnostics.XmlWriterTraceListener, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" initializeData="c:\temp\sampleLogFile.xml" /> <add name="Console" type="System.Diagnostics.ConsoleTraceListener, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" initializeData="true" /> </sharedListeners> </system.diagnostics> </configuration>
Untuk mengonfigurasi ulang pendengar
Temukan elemen
<add>
pendengar dari bagian<sharedListeners>
.Atribut
type
memberikan nama jenis pendengar. Jenis ini harus diwarisi dari kelas TraceListener. Gunakan nama jenis yang dinamai dengan kuat untuk memastikan bahwa digunakan jenis yang tepat. Untuk informasi selengkapnya, lihat bagian "Untuk mereferensikan jenis yang dinamai dengan kuat" di bawah ini.Beberapa jenis yang dapat Anda gunakan adalah:
Pendengar Microsoft.VisualBasic.Logging.FileLogTraceListener, yang menulis ke log file.
Pendengar System.Diagnostics.EventLogTraceListener menulis informasi ke log peristiwa komputer yang ditentukan oleh parameter
initializeData
.Pendengar System.Diagnostics.DelimitedListTraceListener dan System.Diagnostics.XmlWriterTraceListener, yang menulis ke file yang ditentukan dalam parameter
initializeData
.Pendengar System.Diagnostics.ConsoleTraceListener, yang menulis ke konsol baris-perintah.
Untuk informasi tentang di mana jenis informasi tulis listener log lainnya, lihat dokumentasi jenis tersebut.
Ketika aplikasi membuat objek pendengar-log, aplikasi meneruskan atribut
initializeData
sebagai parameter konstruktor. Arti atributinitializeData
tergantung pada pendengar jejak.Setelah membuat pendengar log, aplikasi mengatur properti pendengar. Properti ini didefinisikan oleh atribut lain dalam elemen
<add>
. Untuk informasi selengkapnya tentang properti untuk pendengar tertentu, lihat dokumentasi untuk jenis pendengar tersebut.
Untuk mereferensikan jenis yang dinamai dengan kuat
Untuk memastikan bahwa jenis yang tepat digunakan untuk pendengar log Anda, pastikan untuk menggunakan nama jenis yang sepenuhnya memenuhi syarat dan nama rakitan yang dinamai dengan kuat. Sintaks dari jenis yang dinamai dengan kuat adalah sebagai berikut:
<nama jenis>, <nama rakitan>, <nomor versi>, <budaya>, <nama kuat>
Contoh kode ini menunjukkan cara menentukan nama jenis yang sangat dinamai untuk jenis yang sepenuhnya memenuhi syarat—"System.Diagnostics.FileLogTraceListener" dalam hal ini.
Public Sub DisplayStrongName() Dim t As Type = GetType(Logging.FileLogTraceListener) MsgBox(t.FullName & ", " & t.Assembly.FullName) End Sub
Ini adalah outputnya, dan dapat digunakan untuk secara unik mereferensikan jenis bernama kuat, seperti dalam prosedur "Untuk menambahkan pendengar" di atas.
Microsoft.VisualBasic.Logging.FileLogTraceListener, Microsoft.VisualBasic, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a