Compartir a través de


SqlErrorLogEvent, clase

Proporciona las propiedades para ver los eventos en un archivo de registro SQL Server especificado. 

Sintaxis

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

Propiedades

La clase SQLErrorLogEvent define las propiedades siguientes.

FileName

Tipo de datos: string

Tipo de acceso: De solo lectura

 

El nombre del archivo de registro de errores.

InstanceName

Tipo de datos: string

Tipo de acceso: De solo lectura

Calificadores: Clave

El nombre de la instancia de SQL Server donde reside el archivo de registro.

LogDate

Tipo de datos: datetime

Tipo de acceso: De solo lectura

Certificadores: Clave

 

Fecha y hora en que el evento se grabó en el archivo de registro.

Message

Tipo de datos: string

Tipo de acceso: De solo lectura

 

Mensaje del evento.

ProcessInfo

Tipo de datos: string

Tipo de acceso: De solo lectura

 

Información sobre el identificador del proceso del servidor de origen (SPID) para el evento.

Comentarios

MOF

Sqlmgmproviderxpsp2up.mof

DLL

Sqlmgmprovider.dll

Espacio de nombres

\raíz\Microsoft\SqlServer\ComputerManagement10

Ejemplo

En el siguiente ejemplo se muestra cómo recuperar los valores para todos los eventos anotados en un archivo de registro especificado. Para ejecutar el ejemplo, reemplace <Instance_Name> por el nombre de la instancia de SQL Server, por ejemplo, "Instancia1" y reemplace 'File_Name' por el nombre del archivo de registro de errores, como '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

Comentarios

Cuando InstanceName o FileName no se proporcionan en la instrucción WQL, la consulta devolverá información para la instancia predeterminada y el archivo de registro de SQL Server actual. Por ejemplo, la siguiente instrucción WQL devolverá todos los eventos de registro del archivo de registro actual (ERRORLOG) en la instancia predeterminada (MSSQLSERVER).

"SELECT * FROM SqlErrorLogEvent"

Seguridad

Para conectarse a un archivo de registro de SQL Server a través de WMI, debe tener los siguientes permisos en los equipos local y remoto:

  • Acceso de lectura al espacio de nombres de WMI raíz\Microsoft\SqlServer\ComputerManagement10. De forma predeterminada, todos tienen acceso de lectura mediante el permiso Habilitar cuenta.

  • Permiso de lectura a la carpeta que contiene los registros de errores. De forma predeterminada, los registros de errores se encuentran en la siguiente ruta de acceso (donde <unidad> representa la unidad donde se instaló SQL Server y <nombreDeInstancia> es el nombre de la instancia de SQL Server):

    <unidad>:\Archivos de programa\Microsoft SQL Server\MSSQL11.<nombreDeInstancia>\MSSQL\Log

Si se conecta a través de un firewall, asegúrese de que se establece una excepción en el firewall para WMI en los equipos de destino remotos. Para obtener más información, vea el tema sobre conexión remota a WMI a partir de Windows Vista.

Vea también

Referencia

Clase SqlErrorLogFile

Conceptos

Ver archivos del registro sin conexión