EventLog.Source Properti

Definisi

Mendapatkan atau mengatur nama sumber untuk mendaftar dan menggunakan saat menulis ke log peristiwa.

public:
 property System::String ^ Source { System::String ^ get(); void set(System::String ^ value); };
[System.ComponentModel.SettingsBindable(true)]
public string Source { get; set; }
[System.ComponentModel.TypeConverter("System.Diagnostics.Design.StringValueConverter, System.Design, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")]
public string Source { get; set; }
[System.ComponentModel.TypeConverter("System.Diagnostics.Design.StringValueConverter, System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")]
public string Source { get; set; }
[System.ComponentModel.SettingsBindable(true)]
[System.ComponentModel.TypeConverter("System.Diagnostics.Design.StringValueConverter, System.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")]
public string Source { get; set; }
[<System.ComponentModel.SettingsBindable(true)>]
member this.Source : string with get, set
[<System.ComponentModel.TypeConverter("System.Diagnostics.Design.StringValueConverter, System.Design, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")>]
member this.Source : string with get, set
[<System.ComponentModel.TypeConverter("System.Diagnostics.Design.StringValueConverter, System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")>]
member this.Source : string with get, set
[<System.ComponentModel.SettingsBindable(true)>]
[<System.ComponentModel.TypeConverter("System.Diagnostics.Design.StringValueConverter, System.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")>]
member this.Source : string with get, set
Public Property Source As String

Nilai Properti

Nama yang terdaftar dengan log peristiwa sebagai sumber entri. Defaultnya adalah string kosong ("").

Atribut

Pengecualian

Nama sumber menghasilkan jalur kunci registri yang lebih panjang dari 254 karakter.

Contoh

Contoh berikut membuat sumber MySource jika belum ada, dan menulis entri ke log MyNewLogperistiwa .

#using <System.dll>

using namespace System;
using namespace System::Diagnostics;
using namespace System::Threading;
int main()
{
   
   // Create the source, if it does not already exist.
   if (  !EventLog::SourceExists( "MySource" ) )
   {
      EventLog::CreateEventSource( "MySource", "MyNewLog" );
      Console::WriteLine( "CreatingEventSource" );
   }

   
   // Create an EventLog instance and assign its source.
   EventLog^ myLog = gcnew EventLog;
   myLog->Source = "MySource";
   
   // Write an informational entry to the event log.    
   myLog->WriteEntry( "Writing to event log." );
   Console::WriteLine( "Message written to event log." );
}
using System;
using System.Diagnostics;
using System.Threading;

class MySample{

    public static void Main(){

        // Create the source, if it does not already exist.
        if(!EventLog.SourceExists("MySource"))
        {
            // An event log source should not be created and immediately used.
            // There is a latency time to enable the source, it should be created
            // prior to executing the application that uses the source.
            // Execute this sample a second time to use the new source.
            EventLog.CreateEventSource("MySource", "MyNewLog");
            Console.WriteLine("CreatingEventSource");
            Console.WriteLine("Exiting, execute the application a second time to use the source.");
            // The source is created.  Exit the application to allow it to be registered.
            return;
        }

        // Create an EventLog instance and assign its source.
        EventLog myLog = new EventLog();
        myLog.Source = "MySource";

        // Write an informational entry to the event log.
        myLog.WriteEntry("Writing to event log.");

        Console.WriteLine("Message written to event log.");
    }
}
Option Explicit
Option Strict
Imports System.Diagnostics
Imports System.Threading

Class MySample
    Public Shared Sub Main()
        ' Create the source, if it does not already exist.
        If Not EventLog.SourceExists("MySource") Then
            EventLog.CreateEventSource("MySource", "MyNewLog")
            Console.WriteLine("CreatingEventSource")
        End If
        
        ' Create an EventLog instance and assign its source.
        Dim myLog As New EventLog()
        myLog.Source = "MySource"
        
        ' Write an informational entry to the event log.    
        myLog.WriteEntry("Writing to event log.")
        
        Console.WriteLine("Message written to event log.")
    End Sub
End Class

Keterangan

Sumber kejadian menunjukkan apa yang mencatat peristiwa. Ini seringkali merupakan nama aplikasi, atau nama subkomponen aplikasi, jika aplikasi besar. Aplikasi dan layanan harus menulis ke log Aplikasi atau log kustom. Driver perangkat harus menulis ke log Sistem.

Anda hanya perlu menentukan sumber peristiwa jika Anda menulis ke log peristiwa. Sebelum menulis entri ke log peristiwa, Anda harus mendaftarkan sumber peristiwa dengan log peristiwa sebagai sumber peristiwa yang valid. Ketika Anda menulis entri log, sistem menggunakan Source properti untuk menemukan log yang sesuai untuk menempatkan entri Anda. Jika Anda membaca log peristiwa, Anda dapat menentukan Source, atau Log dan MachineName.

Catatan

Anda tidak diharuskan menentukan MachineName apakah Anda menyambungkan ke log pada komputer lokal. Jika Anda tidak menentukan MachineName, komputer lokal (".") diasumsikan.

Gunakan WriteEvent dan WriteEntry untuk menulis peristiwa ke log peristiwa. Anda harus menentukan sumber kejadian untuk menulis peristiwa; Anda harus membuat dan mengonfigurasi sumber peristiwa sebelum menulis entri pertama dengan sumbernya.

Create sumber kejadian baru selama penginstalan aplikasi Anda. Ini memungkinkan waktu bagi sistem operasi untuk me-refresh daftar sumber peristiwa terdaftar dan konfigurasinya. Jika sistem operasi belum merefresh daftar sumber peristiwanya, dan Anda mencoba menulis peristiwa dengan sumber baru, operasi tulis akan gagal. Anda dapat mengonfigurasi sumber baru menggunakan EventLogInstaller, atau menggunakan CreateEventSource metode . Anda harus memiliki hak administratif pada komputer untuk membuat sumber kejadian baru.

Anda dapat membuat sumber peristiwa untuk log peristiwa yang sudah ada atau log peristiwa baru. Saat Anda membuat sumber baru untuk log peristiwa baru, sistem mendaftarkan sumber untuk log tersebut, tetapi log tidak dibuat sampai entri pertama ditulis ke dalamnya.

Sumbernya harus unik di komputer lokal; nama sumber baru tidak dapat cocok dengan nama sumber yang ada atau nama log peristiwa yang sudah ada. Setiap sumber hanya dapat menulis ke satu log peristiwa pada satu waktu; namun, aplikasi Anda dapat menggunakan beberapa sumber untuk menulis ke beberapa log peristiwa. Misalnya, aplikasi Anda mungkin memerlukan beberapa sumber yang dikonfigurasi untuk log peristiwa yang berbeda atau file sumber daya yang berbeda.

Jika Anda mengubah Source nilai, tempat EventLog terdaftarnya ditutup dan semua handel peristiwa dirilis.

Sumber harus dikonfigurasi baik untuk menulis entri yang dilokalkan atau untuk menulis string langsung. Jika aplikasi Anda menulis entri menggunakan pengidentifikasi sumber daya dan nilai string, Anda harus mendaftarkan dua sumber terpisah. Misalnya, konfigurasikan satu sumber dengan file sumber daya, lalu gunakan sumber tersebut WriteEvent dalam metode untuk menulis entri menggunakan pengidentifikasi sumber daya ke log peristiwa. Kemudian buat sumber yang berbeda tanpa file sumber daya, dan gunakan sumber tersebut WriteEntry dalam metode untuk menulis string langsung ke log peristiwa menggunakan sumber tersebut.

Untuk mengubah detail konfigurasi sumber yang ada, Anda harus menghapus sumber lalu membuatnya dengan konfigurasi baru. Jika aplikasi atau komponen lain menggunakan sumber yang ada, buat sumber baru dengan konfigurasi yang diperbarui daripada menghapus sumber yang ada.

Catatan

Jika sumber telah dipetakan ke log dan Anda memetakan ulang ke log baru, Anda harus memulai ulang komputer agar perubahan diterapkan.

Berlaku untuk

Lihat juga