SQL SERVER - Verificando jobs com falha


/*
Esta query é muito util para quem precisa realizar
algum tipo de automatização para verificar os jobs com falha.
*/


USE MSDB

SELECT
--Pega a ultima vez que job foi executado com falha
MAX(CONVERT(DATETIME, RTRIM(run_date)) +
(run_time * 9 + run_time % 10000 * 6 + run_time % 100 * 10) / 216e4) AS DATA_JOB,
--Nome do job
STEP_NAME
--Id do job
,JOB_ID
--Envia o resultado para uma tabela temporária
INTO #TB_ID_JOB
                          FROM msdb..sysjobhistory A
WHERE STEP_NAME <> '(Job outcome)'
--Rotina com falha
AND RUN_STATUS = 0

GROUP BY STEP_NAME,JOB_ID ORDER BY STEP_NAME

--Verifcando resultados
SELECT * FROM #TB_ID_JOB
--Deleta a tabela temporaria
DROP TABLE #TB_ID_JOB

Versão do Sql Server: 2008 R2
As querys devem funcionar nas versões 2000 e 2005 do Sql Server.

Deixe sua duvida e/ou comentário abaixo.

Comentários

Postagens mais visitadas deste blog

SQL SERVER - Abrindo arquivo Txt/Csv com OpenRowSet

SQL SERVER - Manuseando tabelas