SqlErrorLogEvent 类

提供用于查看指定 SQL Server 日志文件中的事件的属性。

语法

  
class SQLErrorLogEvent   
{  
   stringFileName;  
   stringInstanceName;  
   datetimeLogDate;  
   stringMessage;  
   stringProcessInfo;  
};  

属性

SQLErrorLogEvent 类定义以下属性。

FileName 数据类型:string

访问类型:只读



错误日志文件的名称。
InstanceName 数据类型:string

访问类型:只读

限定符:Key

日志文件所在的 SQL Server 实例的名称。
LogDate 数据类型:datetime

访问类型:只读

限定符:Key



在日志文件中记录该事件的日期和时间。
消息 数据类型:string

访问类型:只读



事件消息。
ProcessInfo 数据类型:string

访问类型:只读



与事件的源服务器进程 ID (SPID) 有关的信息。

注解

MOF Sqlmgmproviderxpsp2up.mof
DLL Sqlmgmprovider.dll
命名空间 \root\Microsoft\SqlServer\ComputerManagement10

示例

下面的示例显示如何检索指定的日志文件中所有记录的事件的值。 若要运行该示例,请将Instance_Name>替换为 <SQL Server 实例的名称(如“Instance1”),并将“File_Name”替换为错误日志文件的名称,例如“ERRORLOG.1”。

on error resume next  
strComputer = "."  
Set objWMIService = GetObject("winmgmts:" _  
    & "{impersonationLevel=impersonate}!\\" _  
    & strComputer & "\root\MICROSOFT\SqlServer\ComputerManagement10")  
set logEvents = objWmiService.ExecQuery("SELECT * FROM SqlErrorLogEvent WHERE InstanceName = '<Instance_Name>' AND FileName = 'File_Name'")  
  
For Each logEvent in logEvents  
WScript.Echo "Instance Name: " & logEvent.InstanceName & vbNewLine _  
    & "Log Date: " & logEvent.LogDate & vbNewLine _  
    & "Log File Name: " & logEvent.FileName & vbNewLine _  
    & "Process Info: " & logEvent.ProcessInfo & vbNewLine _  
    & "Message: " & logEvent.Message & vbNewLine _  
  
Next  

评论

如果未 在 WQL 语句中提供 InstanceNameFileName ,查询将返回默认实例和当前 SQL Server 日志文件的信息。 例如,以下 WQL 语句将返回默认实例(MSSQLSERVER)上当前日志文件(ERRORLOG)中的所有日志事件。

"SELECT * FROM SqlErrorLogEvent"  

安全性

若要通过 WMI 连接到 SQL Server 日志文件,必须在本地和远程计算机上具有以下权限:

  • 对 Root\Microsoft\SqlServer\ComputerManagement10 WMI 命名空间的读取访问权限。 默认情况下,每个人都可以通过“启用帐户”权限获得读取权限。

  • 包含错误日志的文件夹的读取权限。 默认情况下,错误日志位于以下路径中(其中 <Drive> 表示安装了 SQL Server 的驱动器,InstanceName<> 是 SQL Server 实例的名称):

    <Drive>:\Program Files\Microsoft SQL Server\MSSQL12 .<InstanceName>\MSSQL\Log

如果您在通过防火墙进行连接,则请确保在防火墙中针对远程目标计算机上的 WMI 设置例外。 有关详细信息,请参阅 从 Windows Vista 远程连接到 WMI。

另请参阅

SqlErrorLogFile 类
查看脱机日志文件