通过


EventLog.Log 属性

定义

获取或设置要从中读取或写入到的日志的名称。

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),则可能还有其他默认日志文件。 此外,还可以在本地或远程计算机上创建自定义日志文件。 自定义日志有助于以比组件将事件写入默认应用程序日志时更详细的方式组织条目。

注释

日志名称限制为 8 个字符。 根据系统,MyLogSample1 和 MyLogSample2 是相同的日志。

如果写入事件日志,则不足以指定 Log 属性。 必须将属性与事件日志资源相关联 Source ,才能将其连接到特定日志。 不需要指定 Source 仅从日志读取时,但事件源必须与服务器注册表中的事件日志资源相关联。 只能指定要 Log 从中读取的名称和 MachineName (服务器计算机名称)。

注释

无需指定 MachineName 是否连接到日志。 如果未指定 MachineName,则假定本地计算机 (“.”)。

如果未指定属性 Source ,则调用返回 Log 空字符串 Log (通过设置 Log 属性或通过构造函数)。 Source如果已指定,Log则返回注册该源的日志的名称。

一个源一次只能注册到一个日志。 如果为实例设置了该Source属性,则不能Log更改该EventLog属性EventLog的属性,Source而无需更改或首先调用DeleteEventSource的值。 如果在设置属性后Source更改Log属性,则写入日志条目将引发异常。

操作系统将事件日志存储为文件。 使用 EventLogInstallerCreateEventSource 创建新事件日志时,关联的文件存储在指定计算机上的 %SystemRoot%\System32\Config 目录中。 通过将属性的前 8 个字符 Log 追加为“.evt”文件扩展名来设置文件名。

不能单独使用 Log 属性创建新日志(而不指定日志的源)。 可以调用 CreateEventSource,以参数的形式传入新的日志名称,然后调用 DeleteEventSource。 但是,该意向通常是创建(并将条目写入到)新的特定于应用程序的日志,或从现有日志中读取。

Log如果值发生更改,则关闭事件日志并释放所有事件句柄。

注意

如果将属性设置为 Log 不存在的日志的名称,则系统会将该 EventLog 属性附加到应用程序日志,但不会警告你它使用的是指定的日志以外的日志。

适用于

另请参阅