EventLog.Log 屬性
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
取得或設定日誌名稱以讀取或寫入。
public:
property System::String ^ Log { System::String ^ get(); void set(System::String ^ value); };
[System.ComponentModel.SettingsBindable(true)]
public string Log { get; set; }
[System.ComponentModel.TypeConverter("System.Diagnostics.Design.LogConverter, System.Design, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")]
public string Log { get; set; }
[System.ComponentModel.TypeConverter("System.Diagnostics.Design.LogConverter, System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")]
public string Log { get; set; }
[System.ComponentModel.SettingsBindable(true)]
[System.ComponentModel.TypeConverter("System.Diagnostics.Design.LogConverter, System.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")]
public string Log { get; set; }
[<System.ComponentModel.SettingsBindable(true)>]
member this.Log : string with get, set
[<System.ComponentModel.TypeConverter("System.Diagnostics.Design.LogConverter, System.Design, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")>]
member this.Log : string with get, set
[<System.ComponentModel.TypeConverter("System.Diagnostics.Design.LogConverter, System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")>]
member this.Log : string with get, set
[<System.ComponentModel.SettingsBindable(true)>]
[<System.ComponentModel.TypeConverter("System.Diagnostics.Design.LogConverter, System.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")>]
member this.Log : string with get, set
Public Property Log As String
屬性值
記錄的名稱。 這可以是應用程式、系統、安全,或自訂日誌名稱。 預設為空字串(“”)。
- 屬性
範例
以下範例讀取本地電腦事件日誌中的條目「NewEventLog」。
using System;
using System.Diagnostics;
class MySample{
public static void Main(){
EventLog myNewLog = new EventLog();
myNewLog.Log = "NewEventLog";
foreach(EventLogEntry entry in myNewLog.Entries){
Console.WriteLine("\tEntry: " + entry.Message);
}
}
}
Imports System.Diagnostics
Class MySample
Public Shared Sub Main()
Dim myNewLog As New EventLog()
myNewLog.Log = "NewEventLog"
Dim entry As EventLogEntry
For Each entry In myNewLog.Entries
Console.WriteLine((ControlChars.Tab & "Entry: " & entry.Message))
Next entry
End Sub
End Class
備註
伺服器上預設存在三個日誌檔案:應用程式、系統與安全。 應用程式與服務使用應用程式日誌檔。 裝置驅動程式使用系統日誌檔。 當啟用稽核時,系統會在安全日誌中產生成功與失敗稽核事件。 如果你在 Windows 伺服器上安裝了其他應用程式,例如 Active Directory,可能會有其他預設的日誌檔。 此外,你也可以在本地或遠端電腦上建立自訂日誌檔案。 自訂日誌能幫助你以比元件寫入預設應用程式日誌事件時更詳細的方式組織你的條目。
備註
日誌名稱限制為八個字元。 根據系統,MyLogSample1 和 MyLogSample2 是同一個日誌。
如果你寫入事件日誌,僅僅指定 Log 屬性是不夠的。 你必須將一個 Source 屬性與你的事件日誌資源關聯,才能將其連結到特定的日誌。 僅讀取日誌時不必指定 a Source ,但事件來源必須與伺服器登錄檔中的事件日誌資源相關聯。 你只能指定 Log 名稱和 MachineName (伺服器電腦名稱)來讀取。
備註
如果你是連接到日誌,則不需要特別指定。MachineName 若未指定 MachineName,則假設為本地電腦(「.」)。
若未指定該Source屬性,若Log未明確設定(或Log透過建構子設定)呼叫 ,Log則回傳空字串。 若已指定, Source 則 Log 回傳該來源所登記的日誌名稱。
一個來源一次只能註冊到一個日誌。 如果屬性Source是為 的EventLog某個實例設定的,你無法在不先調用 DeleteEventSource 的Source值前更改Log該EventLog屬性。 如果你在設定屬性後Source更改Log該屬性,寫日誌條目會拋出例外。
作業系統會將事件日誌儲存為檔案。 當你使用 EventLogInstaller 或 CreateEventSource 建立新的事件日誌時,相關檔案會儲存在指定電腦的 %SystemRoot%\System32\Config 目錄中。 檔案名稱的設定方式是將屬性的 Log 前 8 個字元加上「.evt」副檔名。
你無法僅用該 Log 屬性建立新的日誌(除非指定日誌來源)。 你可以呼叫 CreateEventSource,將新的日誌名稱作為參數傳遞,然後呼叫 DeleteEventSource。 然而,通常的目的是建立(並寫入)新的應用程式專屬日誌,或是從現有日誌中讀取。
若值改變, Log 事件日誌會關閉,所有事件句柄也會被釋放。