sp_help_jobhistory (Transact-SQL)
Proporciona información acerca de los trabajos en los servidores de un dominio de administración multiservidor.
Convenciones 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
El 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ó el 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 se completó el 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 a la que comenzó el 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 a la que se completó 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 del día 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 estos valores.Valor
Descripción
0
Error
1
Correcto
2
Reintento (solo 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 la salida se debe presentar con los trabajos más antiguos en primer lugar. oldest_first es de tipo int y su valor predeterminado es 0, lo que significa que se presentan 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). |
Comentarios
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 del rol fijo de servidor sysadmin pueden ejecutar este procedimiento almacenado. Al resto de usuarios se les debe conceder uno de los siguientes roles fijos 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 estos roles, vea Roles fijos de base de datos del Agente SQL Server.
Los miembros del rol de base de datos SQLAgentUserRole solo 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