sp_help_jobhistory (Transact-SQL)
Restituisce informazioni sui processi per i server del dominio di amministrazione multiserver.
Sintassi
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' ]
Argomenti
- [ @job_id= ] job_id
Numero di identificazione del processo. job_id è di tipo uniqueidentifier e il valore predefinito è NULL.
- [ @job_name= ] 'job_name'
Nome del processo. job_name è di tipo sysname e il valore predefinito è NULL.
- [ @step_id= ] step_id
Numero di identificazione del passaggio. step_id è di tipo int e il valore predefinito è NULL.
- [ @sql_message_id= ] sql_message_id
Numero di identificazione del messaggio di errore restituito da SQL Server durante l'esecuzione del processo. sql_message_id è di tipo int e il valore predefinito è NULL.
- [ @sql_severity= ] sql_severity
Livello di gravità del messaggio di errore restituito da SQL Server durante l'esecuzione del processo. sql_severity è di tipo int e il valore predefinito è NULL.
- [ @start_run_date= ] start_run_date
Data di avvio del processo. start_run_dateè di tipo int e il valore predefinito è NULL. start_run_date deve essere un valore in formato YYYYMMDD, dove YYYY è l'anno espresso con quattro cifre, MM è il mese espresso con due cifre e AA è il giorno del mese espresso con due cifre.
- [ @end_run_date= ] end_run_date
Data di completamento del processo. end_run_date è di tipo int e il valore predefinito è NULL. end_run_datedeve essere un valore in formato YYYYMMDD, dove YYYY è l'anno espresso con quattro cifre, MM è il mese espresso con due cifre e AA è il giorno del mese espresso con due cifre.
- [ @start_run_time= ] start_run_time
Ora di avvio del processo. start_run_time è di tipo int e il valore predefinito è NULL. start_run_timedeve essere un valore in formato HHMMSS, dove HH è l'ora, MM è il numero di minuti e SS è il numero di secondi. I tre componenti sono espressi con due cifre.
- [ @end_run_time= ] end_run_time
Ora di completamento del processo. end_run_time è di tipo int e il valore predefinito è NULL. end_run_timedeve essere un valore in formato HHMMSS, dove HH è l'ora, MM è il numero di minuti e SS è il numero di secondi. I tre componenti sono espressi con due cifre.
- [ @minimum_run_duration= ] minimum_run_duration
Durata minima per il completamento del processo. minimum_run_duration è di tipo int e il valore predefinito è NULL. minimum_run_durationdeve essere un valore in formato HHMMSS, dove HH è l'ora, MM è il numero di minuti e SS è il numero di secondi. I tre componenti sono espressi con due cifre.
[ @run_status= ] run_status
Stato di esecuzione del processo. run_status è di tipo int e il valore predefinito è NULL. I possibili valori sono i seguenti.Valore Descrizione 0
Non riuscito
1
Completato
2
Nuovo tentativo (solo passaggio)
3
Annullato
4
Messaggio di esecuzione in corso
5
Sconosciuto
- [ @minimum_retries= ] minimum_retries
Numero minimo di tentativi per l'esecuzione di un processo. minimum_retries è di tipo int e il valore predefinito è NULL.
- [ @oldest_first= ] oldest_first
Indica se i processi meno recenti devono essere visualizzati per primi nell'output. oldest_first è di tipo int e il valore predefinito è 0, che consente di elencare per primi i processi più recenti. 1 consente invece di visualizzare per primi i processi meno recenti.
- [ @server= ] 'server'
Nome del server in cui è stato eseguito il processo. server è di tipo nvarchar(30) e il valore predefinito è NULL.
- [ @mode= ] 'mode'
Indica se stampare tutte le colonne del set di risultati (FULL) o un riepilogo delle colonne. mode è di tipo varchar(7) e il valore predefinito è SUMMARY.
Set di risultati
L'elenco delle colonne dipende dal valore di mode. Di seguito è riportato il set di colonne più completo restituito quando mode è FULL.
Nome colonna | Tipo di dati | Descrizione |
---|---|---|
instance_id |
int |
Numero di identificazione della voce di cronologia. |
job_id |
uniqueidentifier |
Numero di identificazione del processo. |
job_name |
sysname |
Nome del processo. |
step_id |
int |
Numero di identificazione del passaggio (uguale a 0 per la cronologia dei processi). |
step_name |
sysname |
Nome del passaggio (è NULL per la cronologia dei processi). |
sql_message_id |
int |
Per un passaggio Transact-SQL, numero di errore Transact-SQL più recente restituito durante l'esecuzione del comando. |
sql_severity |
int |
Per un passaggio Transact-SQL, livello maggiore di gravità degli errori Transact-SQL restituiti durante l'esecuzione del comando. |
message |
nvarchar(1024) |
Messaggio della cronologia relativo al processo o al passaggio. |
run_status |
int |
Risultato del processo o del passaggio. |
run_date |
int |
Data di inizio dell'esecuzione del processo o del passaggio. |
run_time |
int |
Ora di inizio dell'esecuzione del processo o del passaggio. |
run_duration |
int |
Periodo trascorso, in formato HHMMSS, nella fase di esecuzione del processo o passaggio. |
operator_emailed |
nvarchar(20) |
Operatore che ha ricevuto la notifica relativa al processo tramite posta elettronica (è NULL per la cronologia dei passaggi). |
operator_netsent |
nvarchar(20) |
Operatore che ha ricevuto la notifica relativa al processo tramite un messaggio di rete (è NULL per la cronologia dei passaggi). |
operator_paged |
nvarchar(20) |
Operatore che ha ricevuto la notifica relativa al processo tramite cercapersone (è NULL per la cronologia dei passaggi). |
retries_attempted |
int |
Numero di tentativi di esecuzione del passaggio (è sempre 0 per la cronologia dei processi). |
server |
nvarchar(30) |
Server in cui viene eseguito il processo o il passaggio. È sempre (local). |
Osservazioni
La stored procedure sp_help_jobhistory restituisce un report con la cronologia dei processi pianificati specificati. Se non viene specificato alcun parametro, il report include la cronologia di tutti i processi pianificati.
Autorizzazioni
Per impostazione predefinita, questa stored procedure può essere eseguita dai membri del ruolo predefinito del server sysadmin. Gli altri utenti devono appartenere a uno dei seguenti ruoli predefiniti del database di SQL Server Agent nel database msdb:
- SQLAgentUserRole
- SQLAgentReaderRole
- SQLAgentOperatorRole
Per informazioni sulle autorizzazioni di questi ruoli, vedere Ruoli di database predefiniti di SQL Server Agent.
I membri del ruolo del database SQLAgentUserRole possono visualizzare solo la cronologia dei processi di cui sono proprietari.
Valori restituiti
0 (esito positivo) o 1 (esito negativo)
Esempi
A. Visualizzazione di un elenco di tutte le informazioni di un processo
Nell'esempio seguente viene visualizzato un elenco di informazioni per il processo NightlyBackups
USE msdb ;
GO
EXEC dbo.sp_help_jobhistory
@job_name = N'NightlyBackups' ;
GO
B. Visualizzazione di un elenco di informazioni per i processi che corrispondono a determinate condizioni
Nell'esempio seguente vengono stampate tutte le colonne e tutte le informazioni relative ai processi e ai passaggi non eseguiti correttamente che hanno generato un messaggio di errore 50100
(messaggio di errore definito dall'utente) con livello di gravità 20
.
USE msdb
GO
EXEC dbo.sp_help_jobhistory
@sql_message_id = 50100,
@sql_severity = 20,
@run_status = 0,
@mode = N'FULL' ;
GO
Vedere anche
Riferimento
sp_purge_jobhistory (Transact-SQL)
Stored procedure di sistema (Transact-SQL)