Share via


jobs.job_executions (travaux élastiques Azure) (Transact-SQL)

S’applique à Azure SQL Database

Contient l’état et l’historique de l’exécution des travaux dans le service Travaux élastiques Azure pour Azure SQL Database.

Nom de la colonne Type de données Description
job_execution_id UNIQUEIDENTIFIER ID unique d’une instance de l’exécution d’un travail.
job_name nvarchar(128) Nom du travail.
job_id UNIQUEIDENTIFIER ID unique du travail.
job_version int Version du travail (mise à jour automatique à chaque modification).
step_id int Identificateur unique de cette étape (pour ce travail). NULL indique que cette exécution est l’exécution du travail parent.
is_active bit Indique si les informations sont actives ou inactives. 1 indique les travaux actifs et 0 indique inactif.
lifecycle nvarchar(50) Valeur indiquant l’état du travail. Consultez la table Cycle de vie pour connaître les valeurs possibles.
create_time datetime2(7) Date et heure de la création du travail.
heure-début datetime2(7) Date et heure de début de l’exécution du travail. NULL si le travail n’a pas encore été exécuté.
heure-fin datetime2(7) Date et heure de fin de l’exécution du travail. NULL si le travail n’a pas encore été exécuté ou n’a pas encore terminé l’exécution.
current_attempts int Nombre de tentatives pour l’étape. Le travail parent est 0, les exécutions de travaux enfants seront 1 ou supérieures, en fonction de la stratégie d’exécution.
current_attempt_start_time datetime2(7) Date et heure de début de l’exécution du travail. NULL indique que cette exécution est l’exécution du travail parent.
next_attempt_start_time datetime2(7) Date et heure auxquelles le travail lancera la prochaine exécution. NULL indique que cette exécution est l’exécution du travail parent.
last_message nvarchar(max) Message d'historique d'étape ou de travail.
target_type nvarchar(128) Type de base de données cible ou collection de bases de données, y compris toutes les bases de données d’un serveur, toutes les bases de données d’un pool élastique ou d’une base de données. Les valeurs valides sont target_typeSqlServer, SqlElasticPoolou SqlDatabase. NULL indique que cette exécution est l’exécution du travail parent.
target_id UNIQUEIDENTIFIER ID unique du membre du groupe cible. NULL indique que cette exécution est l’exécution du travail parent.
target_group_name nvarchar(128) Nom du groupe cible. NULL indique que cette exécution est l’exécution du travail parent.
target_server_name nvarchar(256) Nom du serveur contenu dans le groupe cible. Spécifié uniquement s’il target_type s’agit SqlServerde . NULL indique que cette exécution est l’exécution du travail parent.
target_database_name nvarchar(128) Nom de la base de données contenue dans le groupe cible. Spécifié uniquement quand target_type est SqlDatabase. NULL indique que cette exécution est l’exécution du travail parent.

Le tableau suivant répertorie les états d’exécution de travaux possibles dans lifecycle:

State Description
Créé le L’exécution du travail vient d’être créée et n’est pas encore en cours d’exécution.
InProgress L’exécution du travail est en cours.
WaitingForRetry L’exécution du travail n’a pas été en mesure de terminer son action et est en attente d’une nouvelle tentative.
Réussi L’exécution du travail s’est terminée avec succès.
SucceededWithSkipped L’exécution du travail s’est terminée avec succès, mais certains de ses enfants ont été ignorés.
Échec L’exécution du travail a échoué et épuisé ses nouvelles tentatives.
TimedOut L’exécution du travail a expiré.
Canceled L’exécution du travail a été annulée.
Ignoré L’exécution du travail a été ignorée, car une autre exécution de la même étape du travail était déjà en cours d’exécution sur la même cible.
WaitingForChildJobExecutions L’exécution du travail attend que les exécutions de ses enfants se termine.

Autorisations

Les membres du rôle jobs_reader peuvent SÉLECTIONNER à partir de cette vue. Pour plus d’informations, consultez Travaux élastiques dans Azure SQL Database.

Attention

Vous ne devez pas mettre à jour les affichages catalogue internes dans la base de données des tâches. Les modifications manuelles de ces affichages catalogue peuvent endommager la base de données des tâches et provoquer une défaillance. Ces vues sont destinées aux requêtes en lecture seule. Vous pouvez utiliser les procédures stockées sur votre base de données de travail.

Notes

Toutes les heures indiquées dans les tâches élastiques sont exprimées dans le fuseau horaire UTC.

Surveiller l’état d’exécution du travail

L’exemple suivant montre comment afficher les détails de l’état d’exécution de tous les travaux.

Connectez-vous au job_database et exécutez la commande suivante :

--Connect to the job database specified when creating the job agent

--View top-level execution status for the job named 'ResultsPoolJob'
SELECT * FROM jobs.job_executions
WHERE job_name = 'ResultsPoolsJob' and step_id IS NULL
ORDER BY start_time DESC;

--View all top-level execution status for all jobs
SELECT * FROM jobs.job_executions WHERE step_id IS NULL
ORDER BY start_time DESC;

--View all execution statuses for job named 'ResultsPoolsJob'
SELECT * FROM jobs.job_executions
WHERE job_name = 'ResultsPoolsJob'
ORDER BY start_time DESC;

-- View all active executions
SELECT * FROM jobs.job_executions
WHERE is_active = 1
ORDER BY start_time DESC;

Exécuter un travail et surveiller l’état

L’exemple suivant montre comment démarrer un travail élastique immédiatement en tant qu’action manuelle et non planifiée.

Connectez-vous au job_database et exécutez la commande suivante :

--Connect to the job database specified when creating the job agent

-- Execute the latest version of a job and receive the execution id
DECLARE @je uniqueidentifier;
EXEC jobs.sp_start_job 'CreateTableTest', @job_execution_id = @je output;
SELECT @je;

-- Monitor progress

SELECT * FROM jobs.job_executions WHERE job_execution_id = @je;