Share via


sp_help_jobhistory (Transact-SQL)

Fornece informações sobre os trabalhos para servidores no domínio de administração multiservidor.

Ícone de vínculo de tópicoConvenções de sintaxe Transact-SQL

Sintaxe

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' ]

Argumentos

  • [ @job_id= ] job_id
    O número de identificação do trabalho. job_id é uniqueidentifier, com um padrão NULL.

  • [ @job_name= ] 'job_name'
    O nome do trabalho. job_name é sysname, com um padrão NULL.

  • [ @step_id= ] step_id
    O número de identificação da etapa. step_id é int, com um padrão NULL.

  • [ @sql_message_id= ] sql_message_id
    O número de identificação da mensagem de erro retornada pelo Microsoft SQL Server ao executar o trabalho. sql_message_id é int, com um padrão NULL.

  • [ @sql_severity= ] sql_severity
    O nível de severidade da mensagem de erro retornada pelo Microsoft SQL Server ao executar o trabalho. sql_severity é int, com um padrão NULL.

  • [ @start_run_date= ] start_run_date
    A data em que o trabalho foi iniciado. start_run_dateé int, com um padrão NULL. start_run_date deve ser inserida no formato AAAAMMDD, em que AAAA é um ano de quatro caracteres, MM é o nome de um mês de dois caracteres e DD é o nome de um dia de dois caracteres.

  • [ @end_run_date= ] end_run_date
    A data em que o trabalho foi concluído. end_run_date é int, com um padrão NULL. end_run_datedeve ser inserida no formato AAAAMMDD, em que AAAA é um ano de quatro dígitos, MM é o nome de um mês de dois caracteres e DD é o nome de um dia de dois caracteres.

  • [ @start_run_time= ] start_run_time
    A hora em que o trabalho foi iniciado. start_run_time é int, com um padrão NULL. start_run_timedeve ser inserida no formato HHMMSS, em que HH é uma hora do dia de dois caracteres, MM é um minuto do dia de dois caracteres e SS é um Segundo do dia de dois caracteres.

  • [ @end_run_time= ] end_run_time
    A hora em que o trabalho concluiu sua execução. end_run_time é int, com um padrão NULL. end_run_timedeve ser inserida no formato HHMMSS, em que HH é uma hora do dia de dois caracteres, MM é um minuto do dia de dois caracteres e SS é um Segundo do dia de dois caracteres.

  • [ @minimum_run_duration= ] minimum_run_duration
    O período mínimo para a conclusão do trabalho. minimum_run_duration é int, com um padrão NULL. minimum_run_durationdeve ser inserida no formato HHMMSS, em que HH é uma hora do dia de dois caracteres, MM é um minuto do dia de dois caracteres e SS é um Segundo do dia de dois caracteres.

  • [ @run_status= ] run_status
    O status de execução do trabalho. run_status é int, com um padrão NULL, e pode ser um destes valores.

    Valor

    Descrição

    0

    Falhou

    1

    Teve êxito

    2

    Repetir (somente a etapa)

    3

    Cancelado

    4

    Mensagem em andamento

    5

    Desconhecido

  • [ @minimum_retries= ] minimum_retries
    O número mínimo de horas para que um trabalho tente ser executado novamente. minimum_retries é int, com um padrão NULL.

  • [ @oldest_first= ] oldest_first
    Especifica se a saída deve ser apresentada com os trabalhos mais antigos primeiro. oldest_first é int, com um padrão 0, que apresenta os trabalhos mais recentes primeiro. 1 apresenta os trabalhos mais antigos primeiro.

  • [ @server= ] 'server'
    O nome do servidor no qual o trabalho foi executado. server é nvarchar(30), com um padrão NULL.

  • [ @mode= ] 'mode'
    Especifica se o SQL Server imprime todas as colunas no conjunto de resultados (FULL) ou um resumo das colunas. mode é varchar(7), com um padrão SUMMARY.

Valores de código de retorno

0 (êxito) ou 1 (falha)

Conjuntos de resultados

A lista de colunas em si depende do valor de mode. O conjunto mais abrangente de colunas é mostrado abaixo e é retornado quando mode é FULL.

Nome da coluna

Tipo de dados

Descrição

instance_id

int

Número de identificação de entrada de histórico.

job_id

uniqueidentifier

Número de identificação do trabalho.

job_name

sysname

Nome do trabalho.

step_id

int

Número de identificação de etapa (será 0 para um histórico de trabalho).

step_name

sysname

Nome da etapa (será o NULL para um histórico de trabalho).

sql_message_id

int

Para uma etapa do Transact-SQL, o número de erro mais recente do Transact-SQL encontrado ao executar o comando.

sql_severity

int

Para uma etapa do Transact-SQL, a severidade de erro mais alta do Transact-SQL encontrada ao executar o comando.

message

nvarchar(1024)

Mensagem de histórico de trabalho ou de etapa.

run_status

int

Resultado do trabalho ou da etapa.

run_date

int

Data em que o trabalho ou a etapa começaram a ser executados.

run_time

int

Hora em que o trabalho ou a etapa começaram a ser executados.

run_duration

int

Tempo decorrido na execução do trabalho ou da etapa no formato HHMMSS.

operator_emailed

nvarchar(20)

Operador que foi enviado por email relativo a esse trabalho (é NULL para o histórico de etapas).

operator_netsent

nvarchar(20)

Operador ao qual foi enviada uma mensagem de rede em relação a esse trabalho (é NULL para o histórico de etapas).

operator_paged

nvarchar(20)

Operador que foi informado por pager em relação a esse trabalho (é NULL para o histórico de etapas).

retries_attempted

int

Número de vezes que a etapa foi repetida (sempre 0 para um histórico de trabalhos).

server

nvarchar(30)

Servidor no qual a etapa ou o trabalho são executados. É sempre (local).

Comentários

sp_help_jobhistory retorna um relatório com o histórico dos trabalhos agendados especificados. Se nenhum parâmetro for especificado, o relatório conterá o histórico para todos os trabalhos agendados.

Permissões

Por padrão, os membros da função de servidor fixa sysadmin podem executar este procedimento armazenado. Deve ser concedida a outros usuários uma das seguintes funções de banco de dados fixas do SQL Server Agent no banco de dados msdb:

  • SQLAgentUserRole

  • SQLAgentReaderRole

  • SQLAgentOperatorRole

Para obter detalhes sobre as permissões dessas funções, consulte Funções de banco de dados fixas do SQL Server Agent.

Membros da função de banco de dados de SQLAgentUserRole podem exibir o histórico somente para trabalhos que possuem.

Exemplos

A. Listando todas as informações de trabalho para um trabalho

O exemplo a seguir lista todas as informações de trabalho para o trabalho NightlyBackups.

USE msdb ;
GO

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

B. Listando informações para trabalhos que correspondam a determinadas condições

O exemplo a seguir imprime todas as colunas e todas as informações de trabalho para quaisquer trabalhos e etapas de trabalho que falharam com uma mensagem de erro de 50100 (uma mensagem de erro definida pelo usuário) e uma severidade de 20.

USE msdb
GO

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