我希望我可以获得一些关于如何为特定代理作业设置电子邮件警报的帮助,以便在运行持续时间超过30分钟时发送电子邮件警报。
在作业本身添加此步骤会更容易吗? SQL Agent GUI中是否有可用的方法或者我是否必须创建新作业?我认为创建一个新工作的可能性较小,因为我不得不在msdb中查询sysjobhistory;该值仅在作业完成后更新,因此无法帮助...我需要它来检查1个特定代理作业的实际持续时间,因为它正在运行... 特别是因为碰巧工作陷入了僵局(现在不再是问题),所以工作只是停留在它锁定的表上,我只收到最终用户的通知报告没有返回结果:S
答案 0 :(得分:0)
第三方监控软件之外的最佳方法是创建一个高频SQL代理作业,该作业在spid持续时间内对活动会话(由sp_who返回)运行查询。这样,只要spid超过阈值,您就可以通过此监控作业向您发送电子邮件。或者,您可以将当前运行时与从sys.jobhistory表中收集的计算平均运行时间进行比较。