I was perusing the MSSQL Agent logs and came across a job that kept printing errors every 20 seconds. It has an id with a long number. How can you find what job this is by name?
Here is what the error looks like: “Request to run job 0x17DF82795C5C224CBF7DC88E8E3C4E12 (from Alert 2618) refused because the job is not currently enabled.”
To find the job I must assume that this mess of numbers is a GUID, and therefore it relates to a name?
select * from dbo.sysjobs
I find a job_id that relates to the problem above by just grabbing the last part of the guid without dashes. Here is the real job_id:
I can also look for when this job might fire again:
select top 100 * from sysjobschedules where job_id like ‘%C88E8E3C4E12%’
The job is disabled and there are no schedules for it. So why is it erroring every 20 seconds? It is an alert:
select * from dbo.sysalerts where id = 2618
Someone created a check for blocking transaction job, and fired it upon Blocking Alert. Then they found out that they didn’t want the thousands of emails so they disabled the job. The alert is enabled, calling a disabled job. Error logs get filled now instead of inboxes. The solution was to disable the alert.