sp_help_jobhistory (Transact-SQL)

Proporciona información acerca de los trabajos en los servidores de un dominio de administración multiservidor.

Icono de vínculo a temasConvenciones de sintaxis de Transact-SQL

Sintaxis

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
    Número de identificación del trabajo. job_id es de tipo uniqueidentifier y su valor predeterminado es NULL.

  • [ @job_name= ] 'job_name'
    Nombre del trabajo. job_name es de tipo sysname y su valor predeterminado es NULL.

  • [ @step_id= ] step_id
    Número de identificación del paso. step_id es de tipo int y su valor predeterminado es NULL.

  • [ @sql_message_id= ] sql_message_id
    Número de identificación del mensaje de error devuelto por Microsoft SQL Server cuando se ejecuta el trabajo. sql_message_id es de tipo int y su valor predeterminado es NULL.

  • [ @sql_severity= ] sql_severity
    Nivel de gravedad del mensaje de error devuelto por SQL Server cuando se ejecuta el trabajo. sql_severity es de tipo int y su valor predeterminado es NULL.

  • [ @start_run_date= ] start_run_date
    Fecha en que se inició la ejecución del trabajo. start_run_datees de tipo int y su valor predeterminado es NULL. start_run_date se debe escribir con el formato AAAAMMDD, donde AAAA es el año con cuatro cifras, MM es el mes con dos cifras y DD es el día con dos cifras.

  • [ @end_run_date= ] end_run_date
    Fecha en que finalizó la ejecución del trabajo. end_run_date es de tipo int y su valor predeterminado es NULL. end_run_datese debe escribir con el formato AAAAMMDD, donde AAAA es el año con cuatro cifras, MM es el mes con dos cifras y DD es el día con dos cifras.

  • [ @start_run_time= ] start_run_time
    Hora en que se inició la ejecución del trabajo. start_run_time es de tipo int y su valor predeterminado es NULL. start_run_timese debe escribir con el formato HHMMSS, donde HH es la hora del día con dos cifras, MM son los minutos con dos cifras y SS son los segundos con dos cifras.

  • [ @end_run_time= ] end_run_time
    Hora en que finalizó la ejecución del trabajo. end_run_time es de tipo int y su valor predeterminado es NULL. end_run_timese debe escribir con el formato HHMMSS, donde HH es la hora del día con dos cifras, MM son los minutos con dos cifras y SS son los segundos con dos cifras.

  • [ @minimum_run_duration= ] minimum_run_duration
    Duración mínima de la realización del trabajo. minimum_run_duration es de tipo int y su valor predeterminado es NULL. minimum_run_durationse debe escribir con el formato HHMMSS, donde HH es la hora con dos cifras, MM son los minutos con dos cifras y SS son los segundos con dos cifras.

  • [ @run_status= ] run_status
    Estado de ejecución del trabajo. run_status es de tipo int, su valor predeterminado es NULL y puede tener uno de los siguientes valores.

    Valor

    Descripción

    0

    Error

    1

    Correcto

    2

    Reintento (sólo pasos)

    3

    Cancelado

    4

    Mensaje en curso

    5

    Desconocido

  • [ @minimum_retries= ] minimum_retries
    Número mínimo de veces que se debe volver a intentar la ejecución de un trabajo. minimum_retries es de tipo int y su valor predeterminado es NULL.

  • [ @oldest_first= ] oldest_first
    Indica si el resultado se presenta con los trabajos más antiguos en primer lugar. oldest_first es de tipo int y su valor predeterminado es 0, que presenta los trabajos más recientes en primer lugar. 1 presenta los trabajos más antiguos en primer lugar.

  • [ @server= ] 'server'
    Nombre del servidor en el que se realizó el trabajo. server es de tipo nvarchar(30) y su valor predeterminado es NULL.

  • [ @mode= ] 'mode'
    Indica si SQL Server imprime todas las columnas del conjunto de resultados (FULL) o un resumen de las columnas. mode es de tipo varchar(7) y su valor predeterminado es SUMMARY.

Valores de código de retorno

0 (correcto) o 1 (error)

Conjuntos de resultados

La lista real de columnas depende del valor de mode. A continuación se muestra el conjunto de columnas más completo, que se devuelve cuando el valor de mode es FULL.

Nombre de columna

Tipo de datos

Descripción

instance_id

int

Número de identificación de la entrada en el historial.

job_id

uniqueidentifier

Número de identificación del trabajo.

job_name

sysname

Nombre del trabajo.

step_id

int

Número de identificación del paso (será 0 para un historial de trabajos).

step_name

sysname

Nombre de paso (será NULL para un historial de trabajos).

sql_message_id

int

Para pasos Transact-SQL, número de error de Transact-SQL más reciente encontrado en la ejecución del comando.

sql_severity

int

Para pasos Transact-SQL, nivel de gravedad más alto de los errores de Transact-SQL encontrado en la ejecución del comando.

message

nvarchar(1024)

Mensaje del historial de trabajos o pasos.

run_status

int

Resultado del trabajo o del paso.

run_date

int

Fecha en que empezó la ejecución del trabajo o del paso.

run_time

int

Hora en que empezó la ejecución del trabajo o del paso.

run_duration

int

Tiempo transcurrido en la ejecución del trabajo o paso en formato HHMMSS.

operator_emailed

nvarchar(20)

Operador que recibió mensajes de correo electrónico relativos a este trabajo (es NULL para el historial de pasos).

operator_netsent

nvarchar(20)

Operador que recibió mensajes de red relativos a este trabajo (es NULL para el historial de pasos).

operator_paged

nvarchar(20)

Operador que recibió mensajes de localizador relativos a este trabajo (es NULL para el historial de pasos).

retries_attempted

int

Número de veces que se ha vuelto a intentar el paso (siempre es 0 para un historial de trabajos).

server

nvarchar(30)

Servidor en el que se ejecuta el paso o el trabajo. Siempre es (local).

Notas

sp_help_jobhistory devuelve un informe con el historial de los trabajos programados especificados. Si no se especifican parámetros, el informe contiene el historial de todos los trabajos programados.

Permisos

De forma predeterminada, los miembros de la función fija de servidor sysadmin pueden ejecutar este procedimiento almacenado. A otros usuarios debe concederse una de las siguientes funciones fijas de base de datos del Agente SQL Server en la base de datos msdb:

  • SQLAgentUserRole

  • SQLAgentReaderRole

  • SQLAgentOperatorRole

Para obtener más información acerca de los permisos de estas funciones, vea Funciones fijas de base de datos del Agente SQL Server.

Los miembros de la función de base de datos SQLAgentUserRole sólo pueden ver el historial de los trabajos que les pertenecen.

Ejemplos

A. Mostrar toda la información de un trabajo

En el siguiente ejemplo se muestra toda la información del trabajo NightlyBackups.

USE msdb ;
GO

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

B. Mostrar información de trabajos que cumplen determinadas condiciones

En el siguiente ejemplo se imprimen todas las columnas y toda la información de los trabajos o pasos de trabajo que no progresaron y devolvieron el mensaje de error 50100 (mensaje de error definido por el usuario) y una gravedad de 20.

USE msdb
GO

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