sp_help_jobhistory (Transact-SQL)

Применимо к:SQL Server

Предоставляет сведения о заданиях серверов в многосерверном административном домене.

Соглашения о синтаксисе Transact-SQL

Синтаксис

  
sp_help_jobhistory [ [ @job_id = ] job_id ]   
     [ , [ @job_name = ] 'job_name' ]   
     [ , [ @step_id = ] step_id ]   
     [ , [ @sql_message_id = ] sql_message_id ]   
     [ , [ @sql_severity = ] sql_severity ]   
     [ , [ @start_run_date = ] start_run_date ]   
     [ , [ @end_run_date = ] end_run_date ]   
     [ , [ @start_run_time = ] start_run_time ]   
     [ , [ @end_run_time = ] end_run_time ]   
     [ , [ @minimum_run_duration = ] minimum_run_duration ]   
     [ , [ @run_status = ] run_status ]   
     [ , [ @minimum_retries = ] minimum_retries ]   
     [ , [ @oldest_first = ] oldest_first ]   
     [ , [ @server = ] 'server' ]   
     [ , [ @mode = ] 'mode' ]  

Аргументы

[ @job_id = ] job_id Идентификационный номер задания. job_id является уникальным идентификатором с значением NULL по умолчанию.

[ @job_name = ] 'job_name' Имя задания. job_name имеет имя sysname с значением NULL по умолчанию.

[ @step_id = ] step_id Идентификационный номер шага. step_id имеет значение int с значением NULL по умолчанию.

[ @sql_message_id = ] sql_message_id Идентификационный номер сообщения об ошибке, возвращаемого Microsoft SQL Server при выполнении задания. sql_message_id имеет значение int с значением NULL по умолчанию.

[ @sql_severity = ] sql_severity Уровень серьезности сообщения об ошибке, возвращаемого SQL Server при выполнении задания. sql_severity имеет значение int с значением NULL по умолчанию.

[ @start_run_date = ] start_run_date Дата начала задания. start_run_date имеет значение int с значением NULL по умолчанию. start_run_date необходимо ввести в форме, где ггГГ является четырехзначным годом, ММ — это двухзначное имя yyyyMMddмесяца, а DD — двухзначное имя дня.

[ @end_run_date = ] end_run_date Дата завершения задания. end_run_date имеет значение int с значением NULL по умолчанию. end_run_date необходимо ввести в форме, где ггГГ является четырехзначным годом, ММ — это двухзначное yyyyMMddимя месяца, а DD — двухзначное имя дня.

[ @start_run_time = ] start_run_time Время запуска задания. start_run_time имеет значение int с значением NULL по умолчанию. start_run_time необходимо ввести в формеHHmmss, где HH является двухзначным часом дня, ММ — это двухзначная минута дня, а SS — это двухзначная секунда дня.

[ @end_run_time = ] end_run_time Время завершения выполнения задания. end_run_time имеет значение int с значением NULL по умолчанию. end_run_time необходимо ввести в формеHHmmss, где HH является двухзначным часом дня, ММ — это двухзначная минута дня, а SS — это двухзначная секунда дня.

[ @minimum_run_duration = ] minimum_run_duration Минимальная продолжительность времени завершения задания. minimum_run_duration имеет значение int с значением NULL по умолчанию. minimum_run_duration необходимо ввести в формеHHmmss, где HH является двухзначным часом дня, ММ — это двухзначная минута дня, а SS — это двухзначная секунда дня.

[ @run_status = ] run_status Состояние выполнения задания. run_status имеет значение int с значением NULL по умолчанию и может быть одним из этих значений.

значение Описание
0 Неудачно
1 Выполнено успешно
2 Повторить (только для этапа)
3 Отменено
4 Сообщение о проценте выполнения
5 Неизвестно

[ @minimum_retries = ] minimum_retries Минимальное количество попыток выполнения задания. minimum_retries имеет значение int с значением NULL по умолчанию.

[ @oldest_first = ] oldest_first Указывает, следует ли сначала представить выходные данные с самыми старыми заданиями. oldest_first имеет значение int с значением по умолчанию 0, которое сначала представляет самые новые задания. 1 представляет самые старые задания в первую очередь.

[ @server = ] 'server' Имя сервера, на котором выполнялось задание. сервер имеет значение nvarchar(30) с значением NULL по умолчанию.

[ @mode = ] 'mode' Указывает, печатает ли SQL Server все столбцы в результирующем наборе (FULL) или сводку по столбцам. режимvarchar(7) с значением по умолчанию SUMMARY.

Значения кода возврата

0 (успешно) или 1 (сбой)

Результирующие наборы

Фактический список столбцов зависит от значения режима. Ниже показан наиболее полный набор столбцов и возвращается при полном режиме .

Имя столбца Тип данных Description
instance_id int Идентификационный номер записи журнала.
job_id uniqueidentifier Идентификатор задания.
job_name sysname Имя задания.
step_id int Идентификационный номер шага (будет 0 для журнала заданий).
step_name sysname Имя этапа (NULL для журнала заданий).
sql_message_id int На шаге Transact-SQL при выполнении команды обнаружен последний номер ошибки Transact-SQL.
sql_severity int На шаге Transact-SQL при выполнении команды возникла самая высокая серьезность ошибки Transact-SQL.
message nvarchar(1024) Запись в журнале о задании или этапе.
run_status int Результат задания или этапа.
run_date int Дата начала выполнения задания или этапа.
run_time int Дата начала выполнения задания или этапа.
run_duration int Истекло время выполнения задания или шага в HHmmss формате.
operator_emailed nvarchar(20) Оператор, которому было отправлено электронное письмо относительно этого задания (NULL для журнала этапов).
operator_netsent nvarchar(20) Оператор, которому было отправлено сетевое сообщение относительно этого задания (NULL для журнала этапов).
operator_paged nvarchar(20) Оператор, которому было отправлено сообщение на пейджер относительно этого задания (NULL для журнала этапов).
retries_attempted int Количество повторных попыток запуска этапа (всегда 0 для журнала заданий).
server nvarchar(30) Сервер, на котором выполняется задание или этап. Всегда (локальный).

Замечания

sp_help_jobhistory возвращает отчет с историей указанных запланированных заданий. Если не указаны параметры, отчет содержит журнал всех заданий в расписании.

Разрешения

По умолчанию эту хранимую процедуру могут выполнять только члены предопределенной роли сервера sysadmin . Другим пользователям необходимо предоставить одну из следующих агент SQL Server предопределенных ролей базы данных в базе данных msdb:

  • SQLAgentUserRole

  • SQLAgentReaderRole

  • SQLAgentOperatorRole

Дополнительные сведения о разрешениях этих ролей см. в разделе Предопределенные роли базы данных агента SQL Server.

Члены роли базы данных SQLAgentUserRole могут просматривать журнал только для заданий, принадлежащих им.

Примеры

А. Вывод всех сведений о задании

В следующем примере отображаются все сведения о задании NightlyBackups.

USE msdb ;  
GO  
  
EXEC dbo.sp_help_jobhistory   
    @job_name = N'NightlyBackups' ;  
GO  

B. Вывод сведений о заданиях, которые соответствуют определенным условиям

Следующий пример иллюстрирует вывод всех сведений о шагах заданий, завершившихся неудачно с кодом ошибки 50100 (пользовательская ошибка) и уровнем серьезности 20.

USE msdb  
GO  
  
EXEC dbo.sp_help_jobhistory  
    @sql_message_id = 50100,  
    @sql_severity = 20,  
    @run_status = 0,  
    @mode = N'FULL' ;  
GO  

См. также

sp_purge_jobhistory (Transact-SQL)
Системные хранимые процедуры (Transact-SQL)