jobs.job_executions(Azure 탄력적 작업)(Transact-SQL)
적용 대상: Azure SQL Database
Azure SQL Database용 Azure Elastic Jobs 서비스의 작업에 대한 작업 실행 상태 및 기록을 포함합니다.
열 이름 | 데이터 형식 | Description |
---|---|---|
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) | 작업의 상태를 나타내는 값입니다. 가능한 값은 수명 주기 테이블을 참조하세요. |
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
시스템 상태 | 설명 |
---|---|
만든 날짜 | 작업 실행이 방금 만들어졌으며 아직 진행 중이 아닙니다. |
InProgress | 작업 실행이 현재 진행 중입니다. |
WaitingForRetry | 작업 실행이 해당 작업을 완료할 수 없어 다시 시도를 기다리고 있습니다. |
성공함 | 작업 실행이 성공적으로 완료되었습니다. |
SucceededWithSkipped | 작업 실행이 성공적으로 완료되었지만 일부 자식은 건너뛰었습니다. |
실패함 | 작업 실행이 실패하고 재시도를 모두 사용했습니다. |
TimedOut | 작업 실행 시간이 초과되었습니다. |
Canceled | 작업 실행이 취소되었습니다. |
생략 | 동일한 작업 단계의 또 다른 실행이 동일한 대상에서 이미 실행 중이므로 작업 실행을 건너뛰었습니다. |
WaitingForChildJobExecutions | 작업 실행에서 해당 자식 실행이 완료되기를 기다리고 있습니다. |
사용 권한
jobs_reader 역할의 멤버는 이 보기에서 SELECT할 수 있습니다. 자세한 내용은 Azure SQAL Database에서의 탄력적 작업을 참조하세요.
주의
작업 데이터베이스에서 내부 카탈로그 뷰를 업데이트해서는 안 됩니다. 이러한 카탈로그 뷰를 수동으로 변경하면 작업 데이터베이스가 손상되어 오류가 발생할 수 있습니다. 이러한 보기는 읽기 전용 쿼리만을 위한 것입니다. 작업 데이터베이스에서 저장 프로시저를 사용할 수 있습니다.
설명
탄력적 작업의 모든 시간은 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;