Lendo ErrorLog do SQL Server

Um problema comum que recebo emails pedindo ajuda é que o SQL Server Error Log é muito grande e não é fácil de visualizar o conteúdo com o Visualizador de Log File.

Certo, posso ver através de VBScript e outras formas, mas e T-SQL, é possível?

O SQL Server possui um procedimento chamado xp_readerrorlog. Que permite ler o conteúdo dos arquivos de log do SQL Server diretamente a partir de uma query e também permite a busca por palavras-chave e datas específicas.

xp_readerrorlog <LogNumber>, <LogType><SearchTerm1>,<SearchTerm2><StartDate>, <EndDate>, <SortOrder>

Neste exemplo eu precisava encontrar todos os eventos de deadlock que recebi no meu banco de dados em um determinado período.

Pra isso verifiquei que a cada nova entrada de um Deadlock eu tenho no errorlog a seguinte entrada: Deadlock encountered

Com essa informação eu pude rodar a consulta e trazer todos os momentos em que tive um Deadlock no período do meu log.

xp_readerrorlog 1, 1, ‘Deadlock encountered’

Depois disso com essas informações podem realizar as mais diversas análises sobre os dados. Segue uma ideia do trabalho que realizei e pode-se notar no exemplo que a partir do dia 03 de fevereiro alguma coisa mudou no ambiente:

deadlockerrorlog

Bom proveito, espero que a dica ajude.

Até mais.

2 comentários sobre “Lendo ErrorLog do SQL Server

Deixar mensagem para Felipe Ferreira Cancelar resposta