<service_name>!SPCS_GET_LOGS

Snowflake가 지정된 서비스의 컨테이너에서 수집한 로그를 반환합니다. 자세한 내용은 컨테이너 로그 게시 및 액세스하기 섹션을 참조하십시오.

참고 항목:

서비스 모니터링

구문

<service_name>!SPCS_GET_LOGS(
  [ START_TIME => <constant_expr> ],
  [ END_TIME => <constant_expr> ] )
Copy

인자

START_TIME => constant_expr

로그를 검색할 시간 범위의 시작 시간(TIMESTAMP_LTZ 형식)입니다. 데이터, 시간 및 타임스탬프 데이터를 구성하는 데 사용할 수 있는 함수에 대해서는 날짜 및 시간 함수 섹션을 참조하세요.

START_TIME 이 지정되지 않은 경우, 기본값은 1일 전입니다.

END_TIME => constant_expr

로그를 검색할 시간 범위의 종료 시간(TIMESTAMP_LTZ 형식)입니다.

END_TIME이 지정되지 않은 경우, 기본값은 현재 타임스탬프입니다.

출력

출력의 각 행은 이벤트 테이블에 기록된 하나의 이벤트에 해당합니다. 서비스가 stdout 또는 stderr 에 출력하는 각 줄은 출력에서 하나의 행을 생성합니다.

이 함수는 다음 열을 반환합니다.

데이터 타입

설명

TIMESTAMP

TIMESTAMP_NTZ

Snowflake가 컨테이너에서 로그를 수집한 시점의 UTC(협정 세계시) 타임스탬프입니다. 이 값은 이벤트 테이블의 TIMESTAMP 열에 매핑됩니다.

INSTANCE_ID

NUMBER

작업 서비스 인스턴스의 ID입니다. 이 값은 이벤트 테이블의 RESOURCE_ATTRIBUTES 열에 있는 snow.service.instance 필드에 매핑됩니다.

CONTAINER_NAME

VARCHAR

컨테이너의 이름입니다. 이 값은 이벤트 테이블의 RESOURCE_ATTRIBUTES 열에 있는 snow.service.container.name 필드에 매핑됩니다.

LOG

VARCHAR

Snowflake가 애플리케이션 컨테이너에서 수집한 로그입니다. 이 값은 이벤트 테이블의 VALUE 열에 매핑됩니다.

RECORD_ATTRIBUTES

OBJECT

로그에 대한 추가 정보입니다. 예를 들어, 로그가 수집된 로그 스트림(stderr 또는 stdout)입니다. 이 값은 이벤트 테이블의 RECORD_ATTRIBUTES 열에 매핑됩니다.

액세스 제어 요구 사항

이 작업을 실행하는 데 사용되는 역할 에는 최소한 다음 권한 이 있어야 합니다.

권한

오브젝트

참고

MONITOR

서비스

Operating on an object in a schema requires at least one privilege on the parent database and at least one privilege on the parent schema.

지정된 권한 세트로 사용자 지정 역할을 만드는 방법에 대한 지침은 사용자 지정 역할 만들기 섹션을 참조하십시오.

보안 오브젝트 에 대해 SQL 작업을 수행하기 위한 역할과 권한 부여에 대한 일반적인 정보는 액세스 제어의 개요 섹션을 참조하십시오.

사용법 노트

  • 컨테이너 로그가 출력에 표시되기까지 몇 분 정도 걸릴 수 있습니다.

Snowflake가 지난 하루 동안 my_test_job 작업에 대해 컨테이너에서 수집한 로그를 검색합니다.

SELECT * FROM TABLE(mydb.myschema.my_test_job!SPCS_GET_LOGS());
Copy

출력 예:

+-------------------------+-------------+----------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+----------------------------+
| TIMESTAMP               | INSTANCE_ID | CONTAINER_NAME | LOG                                                                                                                                                                 | RECORD_ATTRIBUTES          |
|-------------------------+-------------+----------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+----------------------------|
| 2025-06-26 00:23:40.281 |           0 | main           | job-tutorial - INFO - Job finished                                                                                                                                  | {                          |
|                         |             |                |                                                                                                                                                                     |   "log.iostream": "stdout" |
|                         |             |                |                                                                                                                                                                     | }                          |
| 2025-06-26 00:23:38.787 |           0 | main           | job-tutorial - INFO - Executing query [select current_time() as time,'hello'] and writing result to table [results]                                                 | {                          |
|                         |             |                |                                                                                                                                                                     |   "log.iostream": "stdout" |
|                         |             |                |                                                                                                                                                                     | }                          |
| 2025-06-26 00:23:38.787 |           0 | main           | job-tutorial - INFO - Connection succeeded. Current session context: database="TUTORIAL_DB", schema="DATA_SCHEMA", warehouse="TUTORIAL_WAREHOUSE", role="TEST_ROLE" | {                          |
|                         |             |                |                                                                                                                                                                     |   "log.iostream": "stdout" |
|                         |             |                |                                                                                                                                                                     | }                          |
| 2025-06-26 00:23:36.852 |           0 | main           | job-tutorial - INFO - Job started                                                                                                                                   | {                          |
|                         |             |                |                                                                                                                                                                     |   "log.iostream": "stdout" |
|                         |             |                |                                                                                                                                                                     | }                          |
+-------------------------+-------------+----------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+----------------------------+

Snowflake가 지난 3일 동안 my_test_job 작업에 대해 컨테이너에서 수집한 로그를 검색합니다.

SELECT * FROM TABLE(mydb.myschema.my_test_job!SPCS_GET_LOGS(START_TIME => DATEADD('day', -3, CURRENT_TIMESTAMP())));
Copy

이름이 main 인 컨테이너의 my_test_job 작업 인스턴스 0 에 대한 로그를 검색합니다. 다음 예제와 같이, START_TIME 및 END_TIME 인자를 생략하면 이 함수는 지난 하루 동안의 로그를 검색합니다.

SELECT * FROM TABLE(mydb.myschema.my_test_job!SPCS_GET_LOGS())
WHERE instance_id = 0 AND container_name = 'main';
Copy