Agent에 등록된 Job들이 제대로 실행되었는지 확인하는것도 DBA의 중요한 업무입니다.
로그파일 뷰어를 통해 Job의 실행여부를 확인할 수도 있지만
쿼리를 통해 조회하면 경고시스템을 직접 만드는 등 유연하게 대처할 수 있습니다.
다음 쿼리는 Agent Job의 실패를 조회합니다.
DECLARE @Date1 DATETIME, @Date2 DATETIME
SET NOCOUNT ON
SELECT A.name
, A.description
, B.step_name
, message = REPLACE(B.message, '. ', '.' + CHAR(10))
, B.run_date
, B.run_time
, B.run_duration
FROM msdb.dbo.sysjobs(NOLOCK) A
INNER JOIN msdb.dbo.sysjobhistory(NOLOCK) B ON A.job_id = B.job_id
WHERE B.run_status = 0
AND B.step_id > 0
AND B.run_date BETWEEN CONVERT(CHAR(8), @Date1, 112) AND CONVERT(CHAR(8), DATEADD(DAY, 1, @Date2), 112)
댓글 없음:
댓글 쓰기