GET_JOB_HISTORY
GET_JOB_HISTORY (Snowpark Container Services 작업 이력)
선택적인 시간 범위와 함께 최대 30일까지의 Snowpark Container Services 작업(job) 이력을 반환해요. 이 함수는 실행 중인 작업과 삭제된 작업을 모두 반환해요.
본문
구문
SNOWFLAKE.SPCS.GET_JOB_HISTORY(
[ CREATED_TIME_START => <constant_expr> ],
[ CREATED_TIME_END => <constant_expr> ],
[ RESULT_LIMIT = <integer> ])
인자
CREATED_TIME_START => <constant_expr>
작업 이력을 가져올 작업 생성 시간 범위의 시작 시각(TIMESTAMP_LTZ 형식)이에요. 예: '2024-04-05 01:02:03'. 날짜·시간·타임스탬프 데이터를 구성하는 데 사용할 수 있는 함수는 날짜 및 시간 함수를 참고해요. 기본값: 현재 타임스탬프 기준 30일 전.
CREATED_TIME_END => <constant_expr>
작업 이력을 가져올 시간 범위의 끝 시각(TIMESTAMP_LTZ 형식)이에요. 기본값: 현재 타임스탬프.
RESULT_LIMIT => <integer>
반환할 최대 행 수예요. 일치하는 행 수가 지정한 제한을 초과하면 최근 타임스탬프를 가진 작업만 지정한 제한까지 반환돼요. 범위: 1에서 10000. 기본값: 100.
출력
이 함수는 다음 컬럼을 반환해요:
| 컬럼 | 데이터 타입 | 설명 |
|---|---|---|
| QUERY_ID | VARCHAR | EXECUTE JOB SERVICE SQL 문의 ID |
| ID | NUMBER | 작업에 대한 내부/시스템 생성 식별자 |
| NAME | VARCHAR | 작업의 이름 |
| DATABASE_NAME | VARCHAR | 작업이 생성된 데이터베이스의 이름 |
| SCHEMA_NAME | VARCHAR | 작업이 생성된 스키마의 이름 |
| CREATED_TIME | TIMESTAMP_LTZ | 작업이 생성된 시각 |
| COMPLETED_TIME | TIMESTAMP_LTZ | 작업이 완료된 시각 |
| DELETED_TIME | TIMESTAMP_LTZ | 작업이 삭제된 시각 |
| STATUS | VARCHAR | 작업의 상태 |
| MESSAGE | VARCHAR | 작업 상태에 대한 추가 정보 |
| INSTANCE_STATUSES | OBJECT | 작업 인스턴스와 컨테이너를 설명하는 키-값 쌍 |
| COMPUTE_POOL_NAME | VARCHAR | 작업이 실행된 컴퓨트 풀의 이름 |
| OWNER | VARCHAR | 작업을 소유하는 역할 |
| OWNER_ROLE_TYPE | VARCHAR | 작업을 소유하는 역할의 유형. ROLE 또는 DATABASE_ROLE 중 하나 |
| PARAMETERS | OBJECT | 작업 생성 시 지정된 매개변수를 설명하는 키-값 쌍 |
| MANAGING_OBJECT | OBJECT | 관리 객체를 설명하는 키-값 쌍. 작업이 Snowflake에 의해 관리되지 않으면 NULL |
액세스 제어 요구 사항
PUBLIC 역할이 이 함수를 사용할 권한을 가져요.
누구나 이 함수를 호출할 수 있지만 출력은 현재 역할에 따라 달라져요. 출력에는 현재 역할이 소유한 작업만 포함돼요.
예시
지난 30일 안에 현재 역할이 만든 모든 작업의 작업 이력을 반환해요(기본 CREATED_TIME_START 값):
SELECT * FROM TABLE(SNOWFLAKE.SPCS.GET_JOB_HISTORY());
지난 3일 안에 실행된 현재 역할이 소유한 최대 10개 작업의 작업 이력을 반환해요:
SELECT *
FROM TABLE(snowflake.spcs.get_job_history(
result_limit => 10,
created_time_start => dateadd('day', -3, current_timestamp())
));
오늘을 포함하지 않고 3일 전과 1일 전 사이에 실행된 최대 10개 작업을 가져와요:
SELECT * FROM TABLE(SNOWFLAKE.SPCS.GET_JOB_HISTORY(
RESULT_LIMIT => 10,
CREATED_TIME_START => DATEADD('day', -3, CURRENT_TIMESTAMP()),
CREATED_TIME_END => DATEADD('day', -1, CURRENT_TIMESTAMP())));