jobs.job_executions (Azure 彈性作業) (Transact-SQL)
適用於:Azure SQL 資料庫
包含適用於 Azure SQL 資料庫 之 Azure 彈性作業服務中作業的作業執行狀態和歷程記錄。
資料行名稱 | 資料類型 | 描述 |
---|---|---|
job_execution_id | UNIQUEIDENTIFIER | 作業執行的執行個體唯一識別碼。 |
job_name | nvarchar(128) | 作業的名稱。 |
job_id | UNIQUEIDENTIFIER | 作業的唯一識別碼。 |
job_version | int | 作業的版本 (每次修改作業時,都會自動更新)。 |
step_id | int | 步驟的唯一 (針對這項作業) 識別碼。 NULL 表示此執行是父作業執行。 |
is_active | bit | 表示資訊是使用中還是非使用中。 1 表示使用中工作,並 0 表示非使用中。 |
lifecycle | nvarchar(50) | 指出作業狀態的值。 如需可能的值,請參閱 生命周期 數據表。 |
create_time | datetime2(7) | 建立作業的日期和時間。 |
start_time | datetime2(7) | 作業開始執行的日期和時間。 NULL 如果工作尚未執行,則為 。 |
end_time | datetime2(7) | 作業執行完成的日期和時間。 NULL 如果工作尚未執行或尚未完成執行,則為 。 |
current_attempts | int | 重試步驟的次數。 父作業是 0 ,子作業執行將會根據執行原則,或 1 更新。 |
current_attempt_start_time | datetime2(7) | 作業開始執行的日期和時間。 NULL 表示此執行是父作業執行。 |
next_attempt_start_time | datetime2(7) | 作業將開始下一次執行的日期和時間。 NULL 表示此執行是父作業執行。 |
last_message | nvarchar(max) | 作業或步驟記錄訊息。 |
target_type | nvarchar(128) | 目標資料庫或資料庫集合的類型,包括伺服器中的所有資料庫、彈性集區或資料庫中的所有資料庫。 的有效值為 target_type SqlServer 、 SqlElasticPool 或 SqlDatabase 。 NULL 表示此執行是父作業執行。 |
target_id | UNIQUEIDENTIFIER | 目標群組成員的唯一識別碼。 NULL 表示此執行是父作業執行。 |
target_group_name | nvarchar(128) | 目標群組的名稱。 NULL 表示此執行是父作業執行。 |
target_server_name | nvarchar(256) | 目標群組中包含的伺服器名稱。 只有當 是 SqlServer 時target_type ,才指定 。 NULL 表示此執行是父作業執行。 |
target_database_name | nvarchar(128) | 目標群組中包含的資料庫名稱。 只有當 是 SqlDatabase 時target_type ,才指定 。 NULL 表示此執行是父作業執行。 |
下表列出 中 lifecycle
可能的作業執行狀態:
State | 描述 |
---|---|
建立日期 | 作業執行剛建立,且尚未開始執行。 |
InProgress | 作業執行目前正在進行中。 |
WaitingForRetry | 作業執行無法完成其動作,正在等待重試。 |
已成功 | 作業執行已順利完成。 |
SucceededWithSkipped | 作業執行已順利完成,但已略過部分子系。 |
失敗 | 作業執行失敗,並用盡其重試。 |
TimedOut | 作業執行逾時。 |
Canceled | 作業執行已取消。 |
已略過 | 已略過作業執行,因為已在相同的目標上執行相同作業步驟的另一個執行。 |
WaitingForChildJobExecutions | 作業執行正在等候其子系執行完成。 |
權限
jobs_reader角色的成員可以從此檢視中選取。 如需詳細資訊,請參閱 Azure SQL 資料庫中的彈性作業。
警告
您不應該更新作業資料庫中 的內部目錄檢視。 手動變更這些目錄檢視可能會損毀作業資料庫並導致失敗。 這些檢視僅適用於唯讀查詢。 您可以在作業資料庫上使用預存程式。
備註
彈性作業的所有時間都在UTC時區。
監視作業執行狀態
下列範例說明如何檢視所有作業的執行狀態詳細資料。
連結至 job_database
,然後執行下列命令:
--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;
執行作業並監視狀態
下列範例示範如何立即啟動彈性作業,做為手動、非計劃性動作。
連結至 job_database
,然後執行下列命令:
--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;