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ずつ増加します。テーブルが削除され、後で再度追加された場合、番号はゼロから再開されます。

STATE

VARCHAR

次のいずれか:

  • ACCEPTED: スキーマの変更は有効ですが、宛先テーブルにはまだ適用されていません。

  • APPLIED: スキーマの変更は宛先テーブルにすでに適用されています。

最初は、レプリケーションの開始時に、値 APPLIED を持つ1行のみが含まれます。それ以降の有効なスキーマ変更には、state=ACCEPTED とstate=APPLIED の2つの行が含まれます。

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 ビューには、増分ロードレプリケーションフェーズ中に宛先テーブルに定期的にデータがマージされるたびに1行が表示されます。

注釈

このビュー内の特定のテーブルの最初の実行は、通常の後続の実行よりも長く、大きくなります。これは、コネクタが初期ロードフェーズ中にテーブルへの増分更新を収集しますが、テーブル全体がレプリケートされた後にのみそれらを処理するためです。

ビューは次の列で構成されます。

列名

データ型

説明

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

Snowflake側でのデータ処理のスループット(記録数/秒(RPS))。

集計されたコネクタメトリクスの表示

コネクタのレプリケーションメトリクスを表示するには、 PUBLIC.AGGREGATED_CONNECTOR_STATS ビューをクエリします。

SELECT * FROM PUBLIC.AGGREGATED_CONNECTOR_STATS;
Copy

PUBLIC.AGGREGATED_CONNECTOR_STATS ビューには、コネクタのメトリクスが1時間ごとに集計されて表示されます。さらなる集計と分析のために、データソース名、スキーマ名、テーブル名を含む追加の列が提供されます。

ビューは次の列で構成されます。

列名

データ型

説明

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 のトラブルシューティング のステップを確認してください。