Поделиться через


sp_help_jobhistory (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 имеет тип uniqueidentifier и значение по умолчанию 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 должен быть задан в формате «ГГГГММДД», где «ГГГГ» — четырехзначное число года, «ММ» — двухзначное число месяца и «ДД» — двухзначное число дня.
  • [ @end_run_date= ] end_run_date
    Дата завершения задания. Аргумент end_run_date имеет тип int и значение по умолчанию NULL. Аргумент end_run_date должен быть задан в формате «ГГГГММДД», где «ГГГГ» — четырехзначное число года, «ММ» — двухзначное число месяца и «ДД» — двухзначное число дня.
  • [ @start_run_time= ] start_run_time
    Время запуска задания. Аргумент start_run_time имеет тип int и значение по умолчанию NULL. Аргумент start_run_time должен быть задан в формате «ЧЧММСС», где «ЧЧ» — двухзначное число часов, «ММ» — двухзначное число минут и «СС» — двухзначное число секунд.
  • [ @end_run_time= ] end_run_time
    Время завершения задания. Аргумент end_run_time имеет тип int и значение по умолчанию NULL. Аргумент end_run_time должен быть задан в формате «ЧЧММСС», где «ЧЧ» — двухзначное число часов, «ММ» — двухзначное число минут и «СС» — двухзначное число секунд.
  • [ @minimum_run_duration= ] minimum_run_duration
    Минимальное время для завершения задания. Аргумент minimum_run_duration имеет тип int и значение по умолчанию NULL. Аргумент minimum_run_duration должен быть задан в формате «ЧЧММСС», где «ЧЧ» — двухзначное число часов, «ММ» — двухзначное число минут и «СС» — двухзначное число секунд.
  • [ @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'
    Имя сервера, на котором выполняется задание. Аргумент server имеет тип nvarchar(30) и значение по умолчанию NULL.
  • [ @mode= ] 'mode'
    Выводит ли SQL Server все столбцы результирующего набора (FULL) полностью или только краткую сводку по столбцам. Аргумент mode имеет тип varchar(7) и значение по умолчанию SUMMARY.

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

0 (успешное завершение) или 1 (неуспешное завершение)

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

Реальный набор столбцов зависит от значения аргумента mode. Самый полный список столбцов показан ниже и возвращается, когда аргумент mode принимает значение FULL.

Имя столбца Тип данных Описание

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

Время, прошедшее с момента запуска задания или этапа в формате «ЧЧММСС».

operator_emailed

nvarchar(20)

Оператор, которому было отправлено электронное письмо относительно этого задания (NULL для журнала этапов).

operator_netsent

nvarchar(20)

Оператор, которому было отправлено сетевое сообщение относительно этого задания (NULL для журнала этапов).

operator_paged

nvarchar(20)

Оператор, которому было отправлено сообщение на пейджер относительно этого задания (NULL для журнала этапов).

retries_attempted

int

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

server

nvarchar(30)

Сервер, на котором выполняется задание или этап. Всегда (local).

Замечания

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

Разрешения

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

  • SQLAgentUserRole
  • SQLAgentReaderRole
  • SQLAgentOperatorRole

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

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

Примеры

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

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

USE msdb ;
GO

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

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

Следующий пример иллюстрирует вывод всех сведений о шагах заданий, завершившихся неудачно с кодом ошибки 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)

Справка и поддержка

Получение помощи по SQL Server 2005