Partager via


Classe SqlErrorLogEvent

Fournit des propriétés pour l'affichage d'événements dans un fichier journal SQL Server spécifié.

Syntaxe

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

Propriétés

La classe SQLErrorLogEvent définit les propriétés suivantes.

FileName

Type de données : string

Type d'accès : Lecture seule

 

Nom du fichier journal des erreurs.

InstanceName

Type de données : string

Type d'accès : Lecture seule

Qualificateurs : Key

Nom de l'instance de SQL Server où le fichier journal réside.

LogDate

Type de données : datetime

Type d'accès : Lecture seule

Qualificateurs : Key

 

Date et heure auxquelles l'événement a été enregistré dans le fichier journal.

Message

Type de données : string

Type d'accès : Lecture seule

 

Message d'événement.

ProcessInfo

Type de données : string

Type d'accès : Lecture seule

 

Informations sur l'ID du processus du serveur source (SPID) pour l'événement.

Notes

MOF

Sqlmgmproviderxpsp2up.mof

DLL

Sqlmgmprovider.dll

Espace de noms

\root\Microsoft\SqlServer\ComputerManagement10

Exemple

L'exemple suivant indique comment extraire des valeurs pour tous les événements enregistrés dans un fichier journal spécifié. Pour exécuter l'exemple, remplacez <Nom_instance> par le nom de l'instance de SQL Server, par exemple « Instance1 » et remplacez « Nom_fichier » par le nom du fichier de journal des erreurs, par exemple « 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

Commentaires

Lorsque InstanceName ou FileName ne sont pas fournis dans l'instruction WQL, la requête retournera les informations pour l'instance par défaut et le fichier journal SQL Server actuel. Par exemple, l'instruction WQL suivante retournera tous les journaux des événements du fichier journal actuel (ERRORLOG) sur l'instance par défaut (MSSQLSERVER).

"SELECT * FROM SqlErrorLogEvent"

Sécurité

Pour se connecter à un fichier journal SQL Server via WMI, vous devez avoir les autorisations suivantes sur l'ordinateur local et l'ordinateur distant :

  • Accès en lecture à l'espace de noms WMI Root\Microsoft\SqlServer\ComputerManagement10. Par défaut, tout le monde a accès en lecture via l'autorisation Activer le compte.

  • Autorisation en lecture sur le dossier qui contient les journaux des erreurs. Par défaut, les journaux des erreurs se trouvent à l'emplacement suivant (où <Lecteur> représente le lecteur sur lequel vous avez installé SQL Server et <Nom_instance> est le nom de l'instance de SQL Server) :

    <Lecteur>:\Program Files\Microsoft SQL Server\MSSQL11.<Nom_instance>\MSSQL\Log

Si vous vous connectez via un pare-feu, vérifiez qu'une exception est définie dans le pare-feu pour WMI sur les ordinateurs cibles distants. Pour plus d'informations, consultez Connexion à WMI à distance avec Windows Vista

Voir aussi

Référence

Classe SqlErrorLogFile

Concepts

Afficher les fichiers journaux hors connexion