snow ログ¶
指定したオブジェクトのログを取得します。
構文¶
snow logs
<object_type>
<object_name>
--from <from_>
--to <to>
--refresh <refresh_time>
--table <event_table>
--log-level <log_level>
--connection <connection>
--host <host>
--port <port>
--account <account>
--user <user>
--password <password>
--authenticator <authenticator>
--private-key-file <private_key_file>
--token-file-path <token_file_path>
--database <database>
--schema <schema>
--role <role>
--warehouse <warehouse>
--temporary-connection
--mfa-passcode <mfa_passcode>
--enable-diag
--diag-log-path <diag_log_path>
--diag-allowlist-path <diag_allowlist_path>
--oauth-client-id <oauth_client_id>
--oauth-client-secret <oauth_client_secret>
--oauth-authorization-url <oauth_authorization_url>
--oauth-token-request-url <oauth_token_request_url>
--oauth-redirect-uri <oauth_redirect_uri>
--oauth-scope <oauth_scope>
--oauth-disable-pkce
--oauth-enable-refresh-tokens
--oauth-enable-single-use-refresh-tokens
--client-store-temporary-credential
--format <format>
--verbose
--debug
--silent
--enhanced-exit-codes
引数¶
object_type
オブジェクトの型。例: テーブル、データベース、コンピューティングプール。
object_name
オブジェクトの名前です。
オプション¶
--from TEXT
取得するログの開始時刻。すべての ISO8061 形式に対応。
--to TEXT
取得するログの終了時刻。すべての ISO8061 形式に対応。
--refresh INTEGER
セットされている場合、ログは秒単位で指定された更新時間でストリームされます。
--table TEXT
ログをクエリするテーブル。提供されない場合、デフォルトのテーブルが使用されます。
--log-level TEXT
フィルターするログレベル。提供されない場合、 INFO が使用されます。デフォルト: INFO。
--connection, -c, --environment TEXT
config.toml
ファイルで定義されている接続の名前。デフォルト:デフォルト
--host TEXT
接続用のホストアドレス。接続に指定された値を上書きします。
--port INTEGER
接続のポート。接続に指定された値を上書きします。
--account, --accountname TEXT
Snowflakeアカウントに割り当てられた名前。接続に指定された値を上書きします。
--user, --username TEXT
Snowflakeに接続するユーザー名。接続に指定された値を上書きします。
--password TEXT
Snowflakeのパスワード。接続に指定された値を上書きします。
--authenticator TEXT
Snowflakeの認証コード。接続に指定された値を上書きします。
--private-key-file, --private-key-path TEXT
Snowflake プライベートキーファイルへのパス。接続に指定された値を上書きします。
--token-file-path TEXT
Snowflake接続時に使用する OAuth トークンを含むファイルへのパス。
--database, --dbname TEXT
使用するデータベース。接続に指定された値を上書きします。
--schema, --schemaname TEXT
使用するデータベーススキーマ。接続に指定された値を上書きします。
--role, --rolename TEXT
使用するロール。接続に指定された値を上書きします。
--warehouse TEXT
使用するウェアハウス名。接続に指定された値を上書きします。
--temporary-connection, -x
config で定義された接続ではなく、コマンドラインパラメーターで定義された接続を使用します。デフォルト: false。
--mfa-passcode TEXT
多要素認証(MFA)に使用するトークン。
--enable-diag
接続診断レポートを作成するかどうか。デフォルト: false。
--diag-log-path TEXT
生成されたレポートのパス。デフォルトはシステム仮ディレクトリです。デフォルト: <system_temporary_directory>.
--diag-allowlist-path TEXT
allowlist パラメーターを含む JSON ファイルへのパス。
--oauth-client-id TEXT
Snowflake統合のためにIDプロバイダーが提供するクライアントIDの値。
--oauth-client-secret TEXT
Snowflake 統合用に ID プロバイダーが提供するクライアントシークレットの値。
--oauth-authorization-url TEXT
認証コードをドライバーに提供する ID プロバイダーエンドポイント。
--oauth-token-request-url TEXT
ドライバーにアクセストークンを供給する ID プロバイダーのエンドポイント。
--oauth-redirect-uri TEXT
URI 認証コードのリダイレクトに使用します。
--oauth-scope TEXT
ID プロバイダー承認リクエストで要求された範囲。
--oauth-disable-pkce
コード交換の証明キー (PKCE) を無効にします。デフォルト:
False
。--oauth-enable-refresh-tokens
実際のアクセストークンが古くなった場合に、サイレント再認証コードを有効にします。デフォルト:
False
。--oauth-enable-single-use-refresh-tokens
シングルユース・更新・トークンのセマンティクスにオプトインするかどうか。デフォルト:
False
。--client-store-temporary-credential
仮認証情報を保存します。
--format [TABLE|JSON]
出力形式を指定します。デフォルト: TABLE
--verbose, -v
ログレベル
info
以上のログエントリを表示します。デフォルト: false。--debug
ログレベル
debug
以上のログ エントリを表示します。デバッグログには追加情報が含まれます。デフォルト: false。--silent
コンソールへの中間出力をオフにします。デフォルト: false。
--enhanced-exit-codes
終了エラーコードをエラーのタイプによって区別します。デフォルト: false。
--help
このコマンドのヘルプテキストを表示します。
使用上の注意¶
snow logsコマンドはイベントテーブルにアクセスし、指定したエンティティの ログ を取得します。デフォルトでは、コマンドはデフォルトのイベントテーブル (SNOWFLAKE.TELEMETRY.EVENTS) 内のログを探しますが、 --table
オプションで別のテーブルを選択することができます。イベントテーブルとデフォルト値の詳細については、 イベントテーブルを作成する を参照してください。
--from
および -to
オプションを使用して、ログを取得する期間をフィルターすることができます。これらのオプションは、どちらか一方でも両方でも使用できますが、両方使用する場合は、 -from
の時刻が --to
の時刻よりも早くなければなりません。提供する時間の値は、 ISO 8601 標準 に準拠する必要があります。詳しい情報は Python datetime.fromisoformat() メソッドのドキュメントも参照してください。
--log-level
オプションを使うと、 重大度レベル でメッセージをフィルターすることができます。一部のログには重大度レベルが含まれていません。このような場合、すべての --log-level
の値に対してメッセージが表示されます。
ログの継続的な更新が必要な場合は、 --refresh
オプションを使用し、取得間隔を秒数で指定することができます。--refresh
と --to
オプションの両方を一緒に使うことはできません。ログのストリームを停止するには、システムのデフォルトの Keyboardinterrupt
キー(Mac Terminalでは CTRL-c
など)を使用します。
例¶
指定した開始時刻から現在までの期間のCompute Poolログを表示します。
snow logs compute_pool MY_COMPUTE_POOL --from '2025-04-01 09:00:31'
10.12.71.201 - - [01/Apr/2025 09:46:07] "GET /healthcheck HTTP/1.1" 200 - 10.12.71.201 - - [01/Apr/2025 09:46:09] "GET /healthcheck HTTP/1.1" 200 - 10.12.71.201 - - [01/Apr/2025 09:46:14] "GET /healthcheck HTTP/1.1" 200 - 10.12.71.201 - - [01/Apr/2025 09:46:19] "GET /healthcheck HTTP/1.1" 200 - 10.12.71.201 - - [01/Apr/2025 09:46:24] "GET /healthcheck HTTP/1.1" 200 - 10.12.71.201 - - [01/Apr/2025 09:46:29] "GET /healthcheck HTTP/1.1" 200 - 10.12.71.201 - - [01/Apr/2025 09:46:34] "GET /healthcheck HTTP/1.1" 200 -
特定のイベントテーブルのログを表示します。
snow logs compute_pool SNOWCLI_COMPUTE_POOL --table "my_db.my_schema.my_events"
開始時刻が終了時刻より遅い時間範囲のログを表示するとエラーになります。
snow logs compute_pool SNOWCLI_COMPUTE_POOL --from '2025-03-24 12:00:31' --to "2024-01-03 00:00:00"
╭─ Error ───────────────────────────────────────────────────────── │ From_time cannot be later than to_time. Please check the values ╰─────────────────────────────────────────────────────────────────