Files
DUTAS/SQLAgent/02_Test/3_Job_Maintenance/SQLAgentInfo.sql
2025-10-06 08:06:01 -04:00

42 lines
1.2 KiB
Transact-SQL

USE msdb;
GO
PRINT '================================================================================';
PRINT 'SECTION 1: SQL AGENT JOB STATUS';
PRINT '================================================================================';
GO
-- List all jobs in SQL Agent
SELECT name AS JobName, enabled, date_created, date_modified
FROM msdb.dbo.sysjobs
ORDER BY name;
GO
-- Job schedule summary
SELECT j.name AS JobName, s.name AS ScheduleName,
s.enabled, s.freq_type, s.active_start_date, s.active_start_time
FROM msdb.dbo.sysjobs j
JOIN msdb.dbo.sysjobschedules js ON j.job_id = js.job_id
JOIN msdb.dbo.sysschedules s ON js.schedule_id = s.schedule_id
ORDER BY j.name;
GO
-- Last job run details
SELECT j.name AS JobName,
h.run_status,
CASE h.run_status
WHEN 0 THEN 'Failed'
WHEN 1 THEN 'Succeeded'
WHEN 2 THEN 'Retry'
WHEN 3 THEN 'Canceled'
WHEN 4 THEN 'In Progress'
END AS StatusDescription,
msdb.dbo.agent_datetime(h.run_date, h.run_time) AS RunDateTime,
h.run_duration
FROM dbo.sysjobs j
LEFT JOIN dbo.sysjobhistory h ON j.job_id = h.job_id
WHERE h.instance_id IN (
SELECT MAX(instance_id) FROM dbo.sysjobhistory GROUP BY job_id
)
ORDER BY RunDateTime DESC;
GO