Cuantas
veces han tratado de ver el historial de ejecución de un job por consola
haciendo botón derecho sobre el job y "view history" y se han
encontrado con el molesto cartelito de "Time Out Expired", quedando
vuestras manos vacías?
Estoy seguro que muchas veces... Ppor ejemplo en ocasión del fallo de un Job ante la necesidad de conocer el mensaje del error del job....
Pues bien, les traigo un script super práctico que les permitirá saber, no solo el motivo en caso de un error o simplemente el detalle de lo ejecutado en caso de un job exitoso, sino también la duración en la ejecución del job y el resultado final de mismo.
Estoy seguro que muchas veces... Ppor ejemplo en ocasión del fallo de un Job ante la necesidad de conocer el mensaje del error del job....
Pues bien, les traigo un script super práctico que les permitirá saber, no solo el motivo en caso de un error o simplemente el detalle de lo ejecutado en caso de un job exitoso, sino también la duración en la ejecución del job y el resultado final de mismo.
Entonces.. tengan a mano este script también cuando
sospechen que un job "esta tardando en ejecutarse más que hace xx
tiempo" . Con este script prontamente podrán evacuar esa duda.
Con uds el script, solo seteen el run_date para limitar la fecha para la cual quieren la data.
Cualquier duda como siempre quedo a disposición, saludos!!
--------------------------------------------------------------------------------------------------------
Con uds el script, solo seteen el run_date para limitar la fecha para la cual quieren la data.
Cualquier duda como siempre quedo a disposición, saludos!!
--------------------------------------------------------------------------------------------------------
-- Detalle:
Estudia La Historia de Ejecución de un Job A Partir de una Fecha
-- Tip:
Utiliza la tablas msdb SysJobHistory/SysJobs
---------------------------------------------------------------------------------------------------------
use msdb
select
step_id,
message,
run_date,
case
len(run_duration) when
6 then left(convert(varchar(6),run_duration),2)+':'+substring(convert(varchar(6),run_duration),3,2)+':'+right(convert(varchar(6),run_duration),2)
when
5 then '0'+left(convert(varchar(5),run_duration),1)+':'+substring(convert(varchar(5),run_duration),2,2)+':'+right(convert(varchar(6),run_duration),2)
when
4 then'00'+':'+left(convert(varchar(4),run_duration),2)+':'+right(convert(varchar(4),run_duration),2)
when
3 then'00:0'+left(convert(varchar(3),run_duration),1)+':'+right(convert(varchar(4),run_duration),2)
end
as 'run_duration',
case run_status when 0 then 'failed'
when
1 then 'succeded'
when 2 then 'retry'
when 3 then 'canceled'
end as 'run_status'
from
SysJobHistory as a
--
left join SysJobs as b
on a.job_id = b.job_id
--
where
b.name = 'DBA
- Indexes Optimize - Miercoles 6 AM' and
run_date > 20161005
order by run_date
No hay comentarios:
Publicar un comentario