SQL Server’da Son 24 Saatte Başarısız Çalışan Job’ları Listelemek

Herkese merhaba,

Bu yazıda SQL Server’da Son 24 Saatte başarısız çalışan Job’ları listelemek ilgili bilgi vermeye çalışacağım.

SQL Server’da bazı durumlarda Son 24 Saatte başarısız çalışan Job’ları listelemek isteyebilirsiniz.

Aşağıdaki kodu kullanarak siz de bu işlemi rahatlıkla yapabilirsiniz.

Kod 1 

DECLARE @FinalDate INT;
SET @FinalDate = CONVERT(INT, CONVERT(VARCHAR(10), DATEADD(DAY, -1, GETDATE()), 112)); -- Yesterday's date as Integer in YYYYMMDD format
SELECT j.[name],
       s.step_name,
       h.step_id,
       h.step_name,
       h.run_date,
       h.run_time,
       h.sql_severity,
       h.message,
       h.server
FROM msdb.dbo.sysjobhistory h
    INNER JOIN msdb.dbo.sysjobs j
        ON h.job_id = j.job_id
    INNER JOIN msdb.dbo.sysjobsteps s
        ON j.job_id = s.job_id
           AND h.step_id = s.step_id
WHERE h.run_status = 0 -- Failure  
      AND h.run_date > @FinalDate
ORDER BY h.instance_id DESC;

Kod 2

SELECT msdb.dbo.agent_datetime(jh.run_date, jh.run_time) AS date_time,
       j.name AS job_name,
       js.step_id AS job_step,
       jh.message AS error_message
FROM msdb.dbo.sysjobs AS j
    INNER JOIN msdb.dbo.sysjobsteps AS js
        ON js.job_id = j.job_id
    INNER JOIN msdb.dbo.sysjobhistory AS jh
        ON jh.job_id = j.job_id
           AND jh.step_id = js.step_id
WHERE jh.run_status = 0
      AND msdb.dbo.agent_datetime(jh.run_date, jh.run_time) >= GETDATE() - 1
ORDER BY msdb.dbo.agent_datetime(jh.run_date, jh.run_time) DESC;

Herkese çalışma hayatında ve yaşamında başarılar kolaylıklar.

346 Kez Okundu

Yavuz Selim Kart

Yazılım ve veri tabanında bildiklerimi anlatmaya gayret ediyorum. Halen birçok programlama dili üzerinde araştırmalar yaparak kendimi geliştiriyorum. Bunlar haricinde Grafik Tasarım ve Wordpress konularına da ilgim bulunmakta. SEO ve Sosyal medya yönetimleri hakkında da bilgim mevcuttur. Kısaca çok çalışmayı seven azimli biriyim.

You may also like...

Yazı kopyalamak yasaktır!