Snowflake Connector for MySQL 모니터링하기

참고

Snowflake Connector for MySQL 에는 커넥터 약관 이 적용됩니다.

다음 섹션에서는 뷰를 쿼리하고 로그 파일을 검사하여 커넥터를 모니터링하는 방법을 설명합니다.

커넥터에 대한 일반 정보 보기

커넥터에 대한 일반 정보를 보려면 DESCRIBE APPLICATION 명령을 실행합니다.

DESCRIBE APPLICATION <app_db_name>;
Copy

여기서:

app_db_name

커넥터 데이터베이스의 이름을 지정합니다.

커넥터에 대한 더 구체적인 정보를 보려면 PUBLIC.CONNECTOR_CONFIGURATION 뷰를 쿼리합니다.

SELECT * FROM PUBLIC.CONNECTOR_CONFIGURATION;
Copy

PUBLIC.CONNECTOR_CONFIGURATION 뷰는 커넥터에 대해 구성된 각 매개 변수의 행을 표시합니다.

다음 표에서 이러한 매개 변수를 설명합니다.

매개 변수

설명

alertingLogsView

이메일 알림을 활성화한 경우 이벤트 테이블에 대한 액세스 권한을 제공하는 뷰 의 이름이 지정됩니다.

alertingNotificationIntegration

이메일 알림을 활성화한 경우 이메일 알림에 사용되는 알림 통합 오브젝트의 이름이 지정됩니다.

alertingRecipients

이메일 알림을 활성화한 경우 커넥터에서 이메일 알림을 받을 수 있는 (쉼표로 구분된) 이메일 주소 목록이 지정됩니다.

alertingSchedule

이메일 알림을 활성화한 경우 커넥터가 오류를 확인하고 알림을 보내는 일정이나 빈도가 지정됩니다.

operational_warehouse

커넥터가 사용하는 운영 웨어하우스의 이름입니다.

웨어하우스

데이터 병합을 위한 컴퓨팅 웨어하우스의 이름입니다.

데이터 원본 보기

데이터 원본에 대한 정보를 보려면 PUBLIC.DATA_SOURCES 뷰를 쿼리합니다.

SELECT * FROM PUBLIC.DATA_SOURCES;
Copy

PUBLIC.DATA_SOURCES 뷰는 커넥터에 대해 구성된 각 데이터 원본의 행을 표시합니다. 뷰는 다음과 같은 열로 구성됩니다.

열 이름

데이터 타입

설명

NAME

VARCHAR

데이터 원본의 이름입니다.

SCHEDULE

VARCHAR

복제 실행 일정입니다. 해당 데이터 원본의 예약된 복제가 비활성화된 경우 NULL을 표시합니다.

DESTINATION_DB_NAME

VARCHAR

대상 데이터베이스의 이름입니다.

데이터 원본의 복제 상태 보기

데이터 원본의 현재 복제 상태를 보려면 PUBLIC.DATA_SOURCE_REPLICATION_STATE 뷰를 쿼리합니다.

SELECT * FROM PUBLIC.DATA_SOURCE_REPLICATION_STATE;
Copy

PUBLIC.DATA_SOURCE_REPLICATION_STATE 뷰는 커넥터에서 구성된 각 데이터 원본의 행을 표시합니다. 뷰는 다음과 같은 열로 구성됩니다.

열 이름

데이터 타입

설명

NAME

VARCHAR

데이터 원본의 이름입니다.

TABLES_ADDED_COUNT

NUMBER

이 데이터 원본에서 능동적으로 복제된 테이블의 수입니다. 이 수에는 복제가 영구적으로 실패한 테이블은 포함되지 않습니다.

CONNECTED_AGENT_ID

VARCHAR

데이터 원본에 할당된 에이전트 애플리케이션의 ID입니다.

SCHEDULE

VARCHAR

복제 실행 일정입니다. 해당 데이터 원본의 예약된 복제가 비활성화된 경우 NULL을 표시합니다.

REPLICATION_STATUS

VARCHAR

데이터 원본의 복제 상태입니다. 가능한 값은 다음과 같습니다.

  • WAITING

  • ONGOING

PREVIOUS_SCHEDULED_RUN_STATUS

VARCHAR

이전에 예약된 복제의 상태입니다. 해당 데이터 원본의 예약된 복제가 비활성화된 경우 NULL을 표시합니다. 가능한 값은 다음과 같습니다.

  • DONE

  • WARNING

PREVIOUS_RUN_FINISHED_AT

TIMESTAMP_NTZ

마지막으로 예약된 복제의 종료 타임스탬프입니다. 해당 데이터 원본의 예약된 복제가 비활성화된 경우 NULL을 표시합니다.

원본 테이블의 복제 상태 보기

각 원본 테이블의 현재 복제 상태를 보려면 PUBLIC.REPLICATION_STATE 뷰를 쿼리합니다.

SELECT * FROM PUBLIC.REPLICATION_STATE;
Copy

PUBLIC.REPLICATION_STATE 뷰에는 각 원본 테이블에 대한 행이 표시됩니다. 뷰는 다음과 같은 열로 구성됩니다.

열 이름

데이터 타입

설명

DATA_SOURCE_NAME

VARCHAR

원본 테이블이 포함된 데이터 원본의 이름입니다.

SCHEMA_NAME

VARCHAR

원본 테이블의 스키마 이름입니다.

TABLE_NAME

VARCHAR

원본 테이블의 이름입니다.

REPLICATION_PHASE

VARCHAR

현재 복제 단계입니다. 가능한 값은 다음과 같습니다.

  • SCHEMA_INTROSPECTION

  • INITIAL_LOAD

  • INCREMENTAL_LOAD

각 상태에 대한 설명은 복제 단계 이해하기 섹션을 참조하십시오.

SCHEMA_INTROSPECTION_STATUS

VARCHAR

현재 스키마 자가 분석 상태입니다. 가능한 값은 다음과 같습니다.

  • WAITING

  • IN_PROGRESS

  • DONE

  • RETRYING

  • FAILED

SNAPSHOT_REPLICATION_STATUS

VARCHAR

현재 스냅샷 복제 상태입니다. 가능한 값은 다음과 같습니다.

  • WAITING

  • IN_PROGRESS

  • DONE

  • RETRYING

  • FAILED

INCREMENTAL_REPLICATION_STATUS

VARCHAR

현재 증분 복제 상태입니다. 가능한 값은 다음과 같습니다.

  • WAITING

  • IN_PROGRESS

  • DONE

  • RETRYING

  • FAILED

복제 단계 이해하기

각 원본 테이블의 복제는 다음 복제 단계에 있을 수 있습니다.

복제 단계

설명

SCHEMA_INTROSPECTION

원본 테이블의 스키마를 검사하고 있습니다. 이 단계가 완료되면 대상 테이블이 생성됩니다.

INITIAL_LOAD

커넥터가 원본 테이블의 스냅샷 로드를 처리하고 있습니다.

INCREMENTAL_LOAD

초기 로드가 완료되고 변경 데이터 캡처 프로세스를 사용하여 데이터가 복제되고 있습니다.

참고

Snowflake Connector for MySQL 에 대한 복제 구성하기 에 설명되어 있는 대로 복제에서 테이블을 제거한 다음 다시 추가하여 FAILED 복제를 처음부터 시작할 수 있습니다.

테이블 스키마 버전 기록 보기

테이블 스키마 변경 기록을 보려면 다음과 유사한 명령을 사용하여 PUBLIC.SCHEMA_CHANGE_HISTORY 뷰를 쿼리합니다.

SELECT * FROM PUBLIC.SCHEMA_CHANGE_HISTORY;
Copy

PUBLIC.SCHEMA_CHANGE_HISTORY 뷰는 각 테이블의 유효한 스키마 버전에 대해 1개 또는 2개의 행을 표시합니다.

뷰는 다음과 같은 열로 구성됩니다.

열 이름

데이터 타입

설명

DATA_SOURCE_NAME

VARCHAR

원본 테이블 데이터 원본 이름입니다.

SCHEMA_NAME

VARCHAR

원본 테이블 스키마 이름입니다.

TABLE_NAME

VARCHAR

원본 테이블 이름입니다.

VERSION

INTEGER

스키마 버전 식별자로, 초기값은 0이며 스키마가 변경될 때마다 1씩 증가합니다. 테이블을 제거한 후 나중에 다시 추가하면 번호가 0부터 다시 시작됩니다.

STATE

VARCHAR

다음 중 하나입니다.

  • ACCEPTED: 스키마 변경은 유효하지만 대상 테이블에 아직 적용되지 않았습니다.

  • APPLIED: 스키마 변경이 대상 테이블에 이미 적용되었습니다.

처음에는 복제가 시작될 때 APPLIED 값을 가진 단일 행만 포함합니다. 이후 유효한 스키마 변경 후에는 두 개의 행이 포함되는데, 하나는 state=ACCEPTED이고 다른 하나는 state=APPLIED입니다.

SOURCE_SCHEMA

VARIANT

원본 테이블의 스키마를 설명하는 JSON입니다.

DESTINATION_TABLE_SCHEMA

VARIANT

이 스키마 버전이 적용된 후 대상 테이블의 스키마를 설명하는 JSON입니다.

INSERTED_AT

TIMESTAMP_NTZ

이 레코드가 삽입된 UTC 타임스탬프입니다.

커넥터 메트릭 보기

커넥터 복제 메트릭을 보려면 PUBLIC.CONNECTOR_STATS 뷰를 쿼리합니다.

SELECT * FROM PUBLIC.CONNECTOR_STATS;
Copy

PUBLIC.CONNECTOR_STATS 뷰는 증분 로드 복제 단계 동안 대상 테이블에 데이터가 주기적으로 병합되는 각 행을 표시합니다.

참고

이 뷰에서 특정 테이블에 대한 첫 번째 실행은 일반적인 후속 실행보다 길고 규모도 큽니다. 이는 커넥터가 초기 로드 단계에서 테이블에 대한 증분 업데이트를 수집하지만 전체 테이블이 복제된 후에만 업데이트를 처리한다는 사실 때문입니다.

뷰는 다음과 같은 열로 구성됩니다.

열 이름

데이터 타입

설명

RESOURCE_INGESTION_DEFINITION_ID

VARCHAR

데이터 원본 이름, 스키마 이름, 테이블 이름에서 생성된 복제된 테이블의 식별자입니다.

INGESTION_CONFIGURATION_ID

VARCHAR

향후 통합을 위한 내부 열입니다.

INGESTION_PROCESS_ID

VARCHAR

병합 프로세스의 ID입니다.

INGESTION_DEFINITION_NAME

VARCHAR

향후 통합을 위한 내부 열입니다.

DATA_SOURCE_NAME

VARCHAR

테이블이 속한 데이터 원본의 이름입니다.

SCHEMA_NAME

VARCHAR

테이블 스키마의 이름입니다.

RESOURCE_NAME

VARCHAR

테이블 이름입니다.

STARTED_AT

TIMESTAMP_NTZ

대상 테이블에 병합된 레코드 배치의 첫 번째 레코드를 원본 데이터베이스에서 읽은 시간입니다.

STATUS

VARCHAR

병합 프로세스 상태입니다. 가능한 값은 다음과 같습니다.

  • FINISHED

  • FAILED

INGESTED_ROWS

NUMBER

배치에서 병합된 행 수입니다.

INGESTION_DURATION_S

NUMBER

배치 처리 시간(초)은 첫 번째 레코드가 관찰되는 시간과 레코드 배치가 대상 테이블에 병합되는 시간 사이의 차이로 계산됩니다.

NATIVE_APP_PROCESSING_DURATION_S

NUMBER

Snowflake 측에서 데이터를 처리하는 데 걸린 시간(초)입니다.

AGENT_PROCESSING_DURATION_S

NUMBER

에이전트 측에서 데이터를 처리하는 데 걸린 시간(초)입니다.

THROUGHPUT_RPS

NUMBER

초당 레코드 수(RPS)로 표시되는 커넥터 처리량입니다. 전체 처리 시간을 고려합니다.

NATIVE_APP_THROUGHPUT_RPS

NUMBER

초당 레코드 수(RPS)로 표시되는 Snowflake 측의 데이터 처리량입니다.

집계된 커넥터 메트릭 보기

커넥터 복제 메트릭을 보려면 PUBLIC.AGGREGATED_CONNECTOR_STATS 뷰를 쿼리합니다.

SELECT * FROM PUBLIC.AGGREGATED_CONNECTOR_STATS;
Copy

PUBLIC.AGGREGATED_CONNECTOR_STATS 뷰는 매시간 집계되는 커넥터의 메트릭을 보여줍니다. 추가적인 집계와 분석을 위해 데이터 원본 이름, 스키마 이름, 테이블 이름이 포함된 열이 추가로 제공됩니다.

뷰는 다음과 같은 열로 구성됩니다.

열 이름

데이터 타입

설명

DATE

DATE

집계 날짜로, 매시간 표시됩니다.

PROCESSED_ROWS_COUNT

NUMBER

집계 시간 동안 테이블에 수집된 행의 합계입니다.

THROUGHPUT_RPS

NUMBER

초당 레코드 수(RPS)로 표시된 집계 시간에 대한 테이블 처리량입니다.

DATA_SOURCE_NAME

VARCHAR

테이블이 속한 데이터 원본의 이름입니다.

SCHEMA_NAME

VARCHAR

테이블 스키마의 이름입니다.

SOURCE_TABLE_NAME

VARCHAR

테이블 이름입니다.

실험적 뷰 보기

커넥터에는 커넥터 상태에 대한 로우 레벨의 자세한 정보를 포함하는 여러 추가적인 뷰가 제공되며 상태 변경 기록 추적이 지원됩니다. 이러한 뷰는 접두사 EXPERIMENTAL 로 시작하는 이름을 가진 PUBLIC 스키마에서 찾아볼 수 있습니다.

다음 표에는 현재 사용 가능한 실험적 뷰가 요약되어 있습니다.

뷰 이름

설명

EXPERIMENTAL_TABLE_REPLICATION_HISTORY

커넥터에서 활성화된 모든 원본 테이블의 상태 변경 기록입니다.

EXPERIMENTAL_DATA_SOURCE_REPLICATION_HISTORY

커넥터에 구성된 모든 데이터 원본의 상태 변경 기록입니다.

EXPERIMENTAL_EVENTS_HISTORY

커넥터에서 발생한 모든 이벤트의 기록입니다.

참고

실험적 뷰는 변경될 수 있으며 향후 커넥터 릴리스에서 수정하거나 제거할 수 있습니다.

커넥터 감사 로그 뷰 보기

커넥터에서 사용자 작업의 감사 로그를 보려면 PUBLIC.AUDIT_LOG 뷰를 쿼리합니다.

SELECT * FROM PUBLIC.AUDIT_LOG;
Copy

PUBLIC.AUDIT_LOG 뷰는 커넥터에서 기록된 사용자가 시작한 각각의 작업에 대한 행을 표시합니다.

뷰는 다음과 같은 열로 구성됩니다.

열 이름

데이터 타입

설명

ACTION_TIME

TIMESTAMP_NTZ

작업이 발생한 시간입니다.

ACTION_TYPE

VARCHAR

작업 유형입니다.

PARAMETERS

VARIANT

작업의 추가 매개 변수입니다.

이 뷰에 기록된 작업은 다음과 같습니다.

  • 데이터 원본 추가

  • 테이블 복제 활성화

  • 테이블 복제 비활성화

  • 데이터 원본에 대해 예약된 복제 활성화

  • 데이터 원본에 대해 예약된 복제 비활성화

에이전트 감사 로그 뷰 보기

커넥터에서 에이전트 작업의 감사 로그를 보려면 PUBLIC.AGENT_AUDIT_LOG 뷰를 쿼리합니다.

SELECT * FROM PUBLIC.AGENT_AUDIT_LOG;
Copy

PUBLIC.AGENT_AUDIT_LOG 뷰는 커넥터에서 등록된 에이전트가 보고한 각각의 작업에 대한 행을 표시합니다.

뷰는 다음과 같은 열로 구성됩니다.

열 이름

데이터 타입

설명

ACTION_TIME

TIMESTAMP_NTZ

작업이 발생한 시간입니다.

ACTION_TYPE

VARCHAR

작업 유형입니다.

PARAMETERS

VARIANT

작업의 추가 매개 변수입니다.

이 뷰에 표시된 작업은 다음과 같습니다.

  • 데이터 원본에 에이전트 할당

  • 데이터 원본에서 에이전트 할당 취소

  • 에이전트 등록

  • 에이전트 등록 취소

  • 스냅샷 로드 시작

  • 스냅샷 로드 완료

  • 스냅샷 로드 실패

  • 스냅샷 로드 종료

  • 스키마 자가 분석 성공

  • 스키마 자가 분석 실패

  • 증분 로드 시작

  • 증분 로드 중지

  • 증분 로드 실패

  • 증분 로드 종료

  • 스키마 변경 사항 보고

커넥터 로그 보기

커넥터 로그를 보려면 커넥터 로그 뷰 를 설정하는 동안 만든 이벤트 테이블을 쿼리합니다.

커넥터에서 에이전트 작업의 감사 로그를 보려면 PUBLIC.AGENT_AUDIT_LOG 뷰를 쿼리합니다.

SELECT * FROM PUBLIC.AGENT_AUDIT_LOG;
Copy

PUBLIC.AGENT_AUDIT_LOG 뷰는 커넥터에서 등록된 에이전트가 보고한 각각의 작업에 대한 행을 표시합니다.

뷰는 다음과 같은 열로 구성됩니다.

열 이름

데이터 타입

설명

ACTION_TIME

TIMESTAMP_NTZ

작업이 발생한 시간입니다.

ACTION_TYPE

VARCHAR

작업 유형입니다.

PARAMETERS

VARIANT

작업의 추가 매개 변수입니다.

이 뷰에 표시된 작업은 다음과 같습니다.

  • 데이터 원본에 에이전트 할당

  • 데이터 원본에서 에이전트 할당 취소

  • 에이전트 등록

  • 에이전트 등록 취소

  • 스냅샷 로드 시작

  • 스냅샷 로드 완료

  • 스냅샷 로드 실패

  • 스냅샷 로드 종료

  • 스키마 자가 분석 성공

  • 스키마 자가 분석 실패

  • 증분 로드 시작

  • 증분 로드 중지

  • 증분 로드 실패

  • 증분 로드 종료

  • 스키마 변경 사항 보고

에이전트 로그 보기

에이전트가 실행 중이면 주기적으로 Snowflake에 로그를 보냅니다. 이러한 로그는 AGENT_LOGS 뷰에서 사용할 수 있으며 다음 쿼리를 사용하여 검색할 수 있습니다.

SELECT * FROM PUBLIC.AGENT_LOGS;
Copy

다음 단계

필요한 경우와 이러한 절차를 완료한 후 Snowflake Connector for MySQL 문제 해결하기 의 단계를 검토합니다.