snow streamlit logs¶
Streams live logs from a deployed Streamlit app to your terminal. The command reads the Streamlit app name from the project definition file (snowflake.yml) or from the --name option, connects to the app’s developer log service, and prints log entries in real time. Press Ctrl+C to stop streaming.
Log streaming requires the SPCSv2 container runtime.
Syntax¶
Arguments¶
entity_idOptional. ID of the Streamlit entity in the project definition file. If omitted, use
--nameto identify the app directly.
Options¶
--name TEXTFully qualified name of the Streamlit app (for example,
my_app,schema.my_app, ordb.schema.my_app). Overrides the project definition when provided.--tail, -n INTEGER RANGENumber of historical log lines to fetch before the live stream begins. Pass
0for live logs only. Allowed range is0–1000. Default:100.-p, --project TEXTPath where the Snowflake project is stored. Defaults to the current working directory.
--env TEXTString in the format
key=value. Overrides variables from theenvsection used for templates.--connection, -c, --environment TEXTName of the connection, as defined in your config.toml file. Default: default.
--host TEXTHost address for the connection. Overrides the value specified for the connection.
--port INTEGERPort for the connection. Overrides the value specified for the connection.
--account, --accountname TEXTName assigned to your Snowflake account. Overrides the value specified for the connection.
--user, --username TEXTUsername to connect to Snowflake. Overrides the value specified for the connection.
--password TEXTSnowflake password. Overrides the value specified for the connection.
--authenticator TEXTSnowflake authenticator. Overrides the value specified for the connection.
--workload-identity-provider TEXTWorkload identity provider (AWS, AZURE, GCP, OIDC). Overrides the value specified for the connection.
--private-key-file, --private-key-path TEXTSnowflake private key file path. Overrides the value specified for the connection.
--token TEXTOAuth token to use when connecting to Snowflake.
--token-file-path TEXTPath to file with an OAuth token to use when connecting to Snowflake.
--database, --dbname TEXTDatabase to use. Overrides the value specified for the connection.
--schema, --schemaname TEXTDatabase schema to use. Overrides the value specified for the connection.
--role, --rolename TEXTRole to use. Overrides the value specified for the connection.
--warehouse TEXTWarehouse to use. Overrides the value specified for the connection.
--temporary-connection, -xUses a connection defined with command-line parameters, instead of one defined in config. Default: False.
--mfa-passcode TEXTToken to use for multi-factor authentication (MFA).
--enable-diagWhether to generate a connection diagnostic report. Default: False.
--diag-log-path TEXTPath for the generated report. Defaults to system temporary directory. Default: <system_temporary_directory>.
--diag-allowlist-path TEXTPath to a JSON file that contains allowlist parameters.
--oauth-client-id TEXTValue of client id provided by the Identity Provider for Snowflake integration.
--oauth-client-secret TEXTValue of the client secret provided by the Identity Provider for Snowflake integration.
--oauth-authorization-url TEXTIdentity Provider endpoint supplying the authorization code to the driver.
--oauth-token-request-url TEXTIdentity Provider endpoint supplying the access tokens to the driver.
--oauth-redirect-uri TEXTURI to use for authorization code redirection.
--oauth-scope TEXTScope requested in the Identity Provider authorization request.
--oauth-disable-pkceDisables Proof Key for Code Exchange (PKCE). Default: False.
--oauth-enable-refresh-tokensEnables a silent re-authentication when the actual access token becomes outdated. Default: False.
--oauth-enable-single-use-refresh-tokensWhether to opt-in to single-use refresh token semantics. Default: False.
--client-store-temporary-credentialStore the temporary credential.
--format [TABLE%JSON%JSON_EXT|CSV]Specifies the output format. Default: TABLE.
--verbose, -vDisplays log entries for log levels info and higher. Default: False.
--debugDisplays log entries for log levels debug and higher; debug logs contain additional information. Default: False.
--silentTurns off intermediate output to console. Default: False.
--enhanced-exit-codesDifferentiate exit error codes based on failure type. Default: False.
--decimal-precision INTEGERNumber of decimal places to display for decimal values. Uses Python’s default precision if not specified. [env var: SNOWFLAKE_DECIMAL_PRECISION].
--helpDisplays the help text for this command.
Usage notes¶
The streamlit logs command attaches to the running container of a deployed Streamlit app and streams log entries until you stop the command with Ctrl+C. Note the following requirements:
- The Streamlit app must already be deployed and running on the SPCSv2 container runtime. If the app uses an earlier runtime, the command exits with an error from the runtime check.
- You must use the same Snowflake connection (or override values) that has access to the app’s database, schema, and role.
- Pair the command with the global
--formatoption to convert the live stream to JSON or CSV for downstream piping. For example,snow streamlit logs my_app --format json | jq .... - Use the
--tailoption to control how many historical log lines are sent before the live stream begins. Pass--tail 0to receive only new log entries.
Examples¶
-
Stream live logs (and the most recent 100 historical lines) for the Streamlit app defined in the current project’s
snowflake.yml: -
Stream live logs for a specific app by fully qualified name, without a project definition:
-
Stream only live entries (no historical lines) and pipe the JSON-formatted stream to another tool:
-
When several Streamlit entities are defined in
snowflake.yml, target one by entity ID: