Classe SqlErrorLogFile
Si applica a: SQL Server
Fornisce proprietà per visualizzare informazioni su un file di log di SQL Server.
Sintassi
class SQLErrorLogFile
{
uint32ArchiveNumber;
stringInstanceName;
datetimeLastModified;
uint32LogFileSize;
stringName;
};
Proprietà
La classe SQLErrorLogFile definisce le proprietà seguenti.
Proprietà | Descrizione |
---|---|
ArchiveNumber | Tipo di dati: uint32 Tipo di accesso: sola lettura Numero dell'archivio per il file di log. |
InstanceName | Tipo di dati: string Tipo di accesso: sola lettura Qualificatori: chiave Nome dell'istanza di SQL Server in cui risiede il file di log. |
LastModified | Tipo di dati: datetime Tipo di accesso: sola lettura Data dell'ultima modifica apportata al file di log. |
LogFileSize | Tipo di dati: uint32 Tipo di accesso: sola lettura Dimensione del file di log, in byte. |
Nome | Tipo di dati: string Tipo di accesso: sola lettura Qualificatori: chiave Nome del file di log. |
Osservazioni:
Type | Nome |
---|---|
MOF | - sqlmgmprovider.mof (SQL Server 2022 (16.x) e versioni successive)- sqlmgmproviderxpsp2up.mof (SQL Server 2019 (15.x) e versioni precedenti) |
DLL | sqlmgmprovider.dll |
Spazio dei nomi | \root\Microsoft\SqlServer\ComputerManagement10 |
Esempio
Nell'esempio seguente vengono recuperate informazioni su tutti i file di log di SQL Server in un'istanza specificata di SQL Server. Per eseguire l'esempio, sostituire <Instance_Name> con il nome dell'istanza, ad esempio 'Instance1'.
on error resume next
set strComputer = "."
set objWMIService = GetObject("winmgmts:\\.\root\Microsoft\SqlServer\ComputerManagement10")
set LogFiles = objWmiService.ExecQuery("SELECT * FROM SqlErrorLogFile WHERE InstanceName = '<Instance_Name>'")
For Each logFile in LogFiles
WScript.Echo "Instance Name: " & logFile.InstanceName & vbNewLine _
& "Log File Name: " & logFile.Name & vbNewLine _
& "Archive Number: " & logFile.ArchiveNumber & vbNewLine _
& "Log File Size: " & logFile.LogFileSize & " bytes" & vbNewLine _
& "Last Modified: " & logFile.LastModified & vbNewLine _
Next
Commenti
Quando InstanceName non viene fornito nell'istruzione WQL, la query restituisce informazioni per l'istanza predefinita. Ad esempio, l'istruzione WQL seguente restituisce informazioni su tutti i file di log dell'istanza predefinita (MSSQLSERVER).
"SELECT * FROM SqlErrorLogFile"
Sicurezza
Per connettersi a un file di log di SQL Server tramite WMI, è necessario disporre delle autorizzazioni seguenti per i computer locali e remoti:
Accesso in lettura allo spazio dei nomi WMI Root\Microsoft\SqlServer\ComputerManagement10 . Per impostazione predefinita, chiunque dispone di accesso in lettura tramite l'autorizzazione Abilita account.
Nota
Per informazioni su come verificare le autorizzazioni WMI, vedere la sezione Sicurezza dell'argomento Visualizzare i file di log offline.
Autorizzazione di lettura per la cartella che contiene i log degli errori. Per impostazione predefinita, i log degli errori si trovano nel percorso seguente (dove <Unità> rappresenta l'unità in cui è installato SQL Server e <InstanceName> è il nome dell'istanza di SQL Server):
<Unità>:\Programmi\Microsoft SQL Server\MSSQL11 .<InstanceName>\MSSQL\Log
Se ci si connette tramite un firewall, assicurarsi che nel firewall sia impostata un'eccezione per WMI nei computer di destinazione remoti. Per altre informazioni, vedere Connessione a WMI in remoto a partire da Windows Vista.