jobs.job_executions (Azure エラスティック ジョブ) (Transact-SQL)
適用対象: Azure SQL Database
Azure SQL Database の Azure エラスティック ジョブ サービスのジョブの実行状態と履歴が含まれます。
列名 | データ型 | 説明 |
---|---|---|
job_execution_id | UNIQUEIDENTIFIER | ジョブ実行のインスタンスの一意の ID。 |
job_name | nvarchar(128) | ジョブの名前。 |
job_id | UNIQUEIDENTIFIER | ジョブの一意の ID。 |
job_version | INT | ジョブのバージョン (ジョブを変更するたびに自動的に更新されます)。 |
step_id | INT | ステップの (このジョブで) 一意の ID。 NULL は、この実行が親ジョブの実行であることを示します。 |
is_active | bit | 情報がアクティブか非アクティブかを示します。 1 はアクティブなジョブを示し、 0 は非アクティブを示します。 |
lifecycle | nvarchar(50) | ジョブの状態を示す値。 使用可能な値については、 Lifecycle 表を参照してください。 |
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 | ターゲット グループ メンバーの一意の ID。 NULL は、この実行が親ジョブの実行であることを示します。 |
target_group_name | nvarchar(128) | ターゲット グループの名前。 NULL は、この実行が親ジョブの実行であることを示します。 |
target_server_name | nvarchar(256) | ターゲット グループに含まれるサーバーの名前。 target_type がSqlServer されている場合にのみ指定されます。 NULL は、この実行が親ジョブの実行であることを示します。 |
target_database_name | nvarchar(128) | ターゲット グループに含まれるデータベースの名前。 target_type がSqlDatabase されている場合にのみ指定されます。 NULL は、この実行が親ジョブの実行であることを示します。 |
次の表に、 lifecycle
で考えられるジョブの実行状態を示します。
State | 説明 |
---|---|
Created | ジョブの実行は作成されたばかりで、まだ進行中ではありません。 |
InProgress | ジョブの実行は現在進行中です。 |
WaitingForRetry | ジョブ実行はそのアクションを完了できず、再試行を待機しています。 |
Succeeded | ジョブの実行が正常に完了しました。 |
SucceededWithSkipped | ジョブの実行は正常に完了しましたが、その子の一部はスキップされました。 |
Failed | ジョブの実行が失敗し、再試行が使い果たされました。 |
TimedOut | ジョブの実行がタイムアウトしました。 |
取り消されました | ジョブの実行は取り消されました。 |
Skipped | 同じジョブ手順の別の実行が同じターゲットに対して既に実行されていたため、ジョブの実行はスキップされました。 |
WaitingForChildJobExecutions | ジョブの実行は、その子の実行が完了するまで待機しています。 |
アクセス許可
jobs_reader ロールのメンバーは、このビューから SELECT できます。 詳細については、「Azure SQL データベース の Elastic jobs」を参照してください。
注意事項
ジョブ データベースの内部カタログ ビューは更新しないでください。 これらのカタログ ビューを手動で変更すると、ジョブ データベースが破損し、エラーが発生する可能性があります。 これらのビューは、読み取り専用クエリ専用です。 ストアド プロシージャは、 job データベースで使用できます。
解説
エラスティック ジョブのすべての時間は、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;