Compartilhar via


Classe SqlErrorLogFile

Aplica-se a: SQL Server

Fornece propriedades para exibir informações sobre um arquivo de log do SQL Server.

Sintaxe

class SQLErrorLogFile
{
    uint32ArchiveNumber;
    stringInstanceName;
    datetimeLastModified;
    uint32LogFileSize;
    stringName;
};

Propriedades

A classe SQLErrorLogFile define as propriedades a seguir.

Propriedade Descrição
Número do arquivo Tipo de dados: uint32

Tipo de acesso: Somente leitura

O número do arquivo morto do arquivo de log.
InstanceName Tipo de dados: string

Tipo de acesso: Somente leitura

Qualificadores: Key

O nome da instância do SQL Server em que o arquivo de log reside.
LastModified Tipo de dados: datetime

Tipo de acesso: Somente leitura

A data da última modificação do arquivo de log.
LogFileSize Tipo de dados: uint32

Tipo de acesso: Somente leitura

O tamanho do arquivo de log, em bytes.
Nome Tipo de dados: string

Tipo de acesso: Somente leitura

Qualificadores: Key

O nome do arquivo de log.

Comentários

Tipo Nome
MOF - sqlmgmprovider.mof (SQL Server 2022 (16.x) e versões posteriores)
- sqlmgmproviderxpsp2up.mof (SQL Server 2019 (15.x) e versões anteriores)
DLL sqlmgmprovider.dll
Namespace \root\Microsoft\SqlServer\ComputerManagement10

Exemplo

O exemplo a seguir recupera informações sobre todos os arquivos de log do SQL Server em uma instância especificada do SQL Server. Para executar o exemplo, substitua <Instance_Name> pelo nome da instância, por exemplo, '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

Comentários

Quando InstanceName não é fornecido na instrução WQL, a consulta retorna informações para a instância padrão. Por exemplo, a instrução WQL a seguir retorna informações sobre todos os arquivos de log da instância padrão (MSSQLSERVER).

"SELECT * FROM SqlErrorLogFile"

Segurança

Para se conectar a um arquivo de log do SQL Server por meio do WMI, você deve ter as seguintes permissões nos computadores local e remoto:

  • Acesso de leitura ao namespace WMI Root\Microsoft\SqlServer\ComputerManagement10 . Por padrão, todos usuários têm acesso de leitura por meio da permissão Habilitar Conta.

    Observação

    Para obter informações sobre como verificar as permissões do WMI, consulte a seção Segurança do tópico Exibir arquivos de log offline.

  • Permissão de leitura para a pasta que contém os logs de erros. Por padrão, os logs de erros estão localizados no seguinte caminho (em que <Drive> representa a unidade em que você instalou o SQL Server e <InstanceName> é o nome da instância do SQL Server):

    <Unidade>:\Arquivos de Programas\Microsoft SQL Server\MSSQL11 .<InstanceName>\MSSQL\Log

Se você estiver se conectando por meio de um firewall, verifique se uma exceção está definida no firewall para WMI em computadores de destino remotos. Para obter mais informações, consulte Conectando-se ao WMI remotamente a partir do Windows Vista.

Confira também