Агрегировать данные из msdb.dbo.sysjobhistory

Каждый раз, когда я запускаю агентскую работу, она записывает некоторые данные в журнал. Я могу получить доступ к этим данным через T-SQL следующим образом: SELECT * FROM msdb.dbo.sysjobhistory WHERE step_id = 0, Он покажет мне краткую информацию о работе.

Проблема в том, что если был шаг с ошибкой, но "при ошибке" было "перейти к следующему шагу" run_status покажет успех.

Я пытаюсь собрать данные из step_id <> 0 но я не знаю, как отличить каждый запуск работы.

Можете ли вы помочь мне с этой проблемой? Наилучшим результатом будет дополнительный столбец с четким списком статусов, которые появляются в задании, отображаемом по первому запросу.

Чего я хочу добиться, так это ежедневного отчета о работах, которые выполнялись (некоторые из них несколько раз в течение дня) в последний день.

1 ответ

Попробуйте присоединить свой запрос к:

SELECT * FROM [dbo].[sysjobsteps]

Это включает в себя поле last_run_outcome.

Ссылка MSDN полной таблицы:

https://msdn.microsoft.com/en-us/library/ms187387.aspx

Другие вопросы по тегам