Environment variables
Connection variables
VIZZLY_CLIENT
Set this environment variable value to "bigquery".VIZZLY_BIGQUERY_PROJECT_ID
Set the Big Query project ID to use in the connection to your BigQuery database.
VIZZLY_BIGQUERY_REGION
Set the region in which your BigQuery database is deployed in
VIZZLY_BIGQUERY_CREDENTIALS
The recommended approach to providing your BigQuery credentials. The value should be a JSON stringified and base 64 encoded string of your Google Cloud Service Account JSON object.
VIZZLY_BIGQUERY_KEY_FILENAME
Optionally override the location of your key file. The default location is /etc/vizzly/bq/service-account.json
.
The preferred option is to use the VIZZLY_BIGQUERY_CREDENTIALS
variable, as this will avoid additionally needing to mount your credentials file onto the file system.
Cloud provider variables
VIZZLY_AWS_SECRETS_MANAGER_SECRET_ID
Load secret environment variables from AWS Secrets Manager (opens in a new tab).
Provide the ID of the secret stored within the same region as the running Vizzly Query Engine, to load secret environment variables at runtime.
The secret should be in a JSON-formatted string, for example, a secret storing a postgres database password will be;
{"VIZZLY_POSTGRES_PASSWORD":"<< YOUR PASSWORD >>"}
Be certain that the container has permission to fetch the secret from AWS Secrets Manager.
Static Vizzly Configs
VIZZLY_CONFIG_GITHUB_REPO
To load your config directly from GitHub, use this environment variable to provide the GitHub repository.
For example; my-organisation/my-repo
VIZZLY_CONFIG_GITHUB_PATH
To load your config directly from GitHub, use this environment variable to provide the path to the vizzly.config.json file in the repository.
For example; folder/subfolder/vizzly-config.json
VIZZLY_CONFIG_GITHUB_TOKEN
To load your Vizzly config file directly from GitHub, use this environment variable to authenticate the request for the vizzly.config.json file.
You will need to generate this token value on GitHub.
PORT
The default port the query engine runs on is port 8000
. You can change this using the PORT
environment variable.
VIZZLY_BASE_PATH
This changes the base path of the Vizzly query engine. For example, you might have a routing layer that matches requests for /vizzly-query-engine/*
, and forwards them to the
query engine. In which case, you'd set this value to /vizzly-query-engine
so the requests match the path matchers in the query engine.
If you need to support dynamic base paths, this is supported by using path matchers and indexes starting at 1. For example, a base path of;
/:1/:2/:3
will match requests sent to all of the following;
/blue/green/red/status
/duck/dog/chicken/status
This environment variable is not required and defaults to ''
.
LOG_LEVEL
Change the log level from the default warning
level. Valid logging levels are "debug"
, "info"
, "warning"
and "error"
.
VIZZLY_MIN_POOL_SIZE
Set the minimum connection pool size. The value must be an integer.
VIZZLY_MAX_POOL_SIZE
Set the minimum connection pool size. The value must be an integer.
VIZZLY_PUBLIC_KEYS
Provide your Vizzly public key through an environment variable, rather than the publicKeyCertificates
field of the Vizzly config.
The value should be formatted as a JSON array. For example, if you had the following public key;
-----BEGIN PUBLIC KEY-----
MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEQJqQ1P+MyW4E/32pXvkxQiOVT0IW
1CwdEzN2D5+KtIK1qyUpMFiH2oBc8BIo8w3AvID0cOrD5+KEKXSIbw9Nig==
-----END PUBLIC KEY-----
then it would be exported in this format as an environment variable.
export VIZZLY_PUBLIC_KEYS='["-----BEGIN PUBLIC KEY-----\r\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEQJqQ1P+MyW4E/32pXvkxQiOVT0IW\r\n1CwdEzN2D5+KtIK1qyUpMFiH2oBc8BIo8w3AvID0cOrD5+KEKXSIbw9Nig==\r\n-----END PUBLIC KEY-----\r\n"]'
The Vizzly CLI command vizzly format-public-pem-for-env
will convert your public PEM file into the format required for the VIZZLY_PUBLIC_KEYS
environment variable.
VIZZLY_CONFIG_FILE
Changes the path at which the config file resides inside the running container.
This environment variable is not required, and defaults to /etc/vizzly/vizzly.config.json
.
VIZZLY_RESULTS_CACHE_STALE_TTL_IN_SECONDS
In seconds, how long should we serve a stale result before removing it from the cache?
VIZZLY_RESULTS_CACHE_FRESH_TTL_IN_SECONDS
In seconds, how long should we serve a result from the cache before considering it stale?
VIZZLY_RESULTS_CACHE_MAX_ITEMS
How many results should we store in the cache?
VIZZLY_CONFIG_CACHE_FRESH_TTL_IN_SECONDS
In seconds, how long should we store a config in the cache, before considering it stale?
VIZZLY_CONFIG_CACHE_STALE_TTL_IN_SECONDS
In seconds, how long should we use a stale config before removing it from the cache?
VIZZLY_DYNAMIC_CONFIG_AUTH_VERIFY_HASH
Hash to verify an API key used for the Vizzly Query Engine.
To generate this value along with the API key, run the command vizzly dynamic-api-key
.
VIZZLY_RESULTS_CACHE_MAX_RESULT_SIZE
Limit the max cache item size of results. This number is calculated by multiplying number of rows, by number of fields in each row.
VIZZLY_PROJECT_API_KEY
API Key used to access resources for a Vizzly project. This value is created on the projects page on the Vizzly app, and will only be shown to you once when generated!
This value should be stored securely.
VIZZLY_ENCRYPTION_SECRET
Encryption key to enable various Query Engine features such as direct sign-in and storing the config on the Vizzly API. This can be generated using the vizzly encryption-secret CLI command.
This value should be unique per project, and stored securely.
VIZZLY_PROJECT_ID
This is your Vizzly Project ID! It can be found on your project settings page on the Vizzly app (opens in a new tab), and begins with prj_
.
VIZZLY_SIGN_IN_FEATURE
Disable the sign-in feature by setting this value to DISABLED
.
This will block all sign-in requests through the CLI and username/password combinations to sign in to the query engine, even if they are valid.
VIZZLY_ALLOW_ORIGIN
Control the Access-Control-Allow-Origin
response header by providing a comma-separated list of origins to allow.
By default, the value is "*"
.
VIZZLY_DASHBOARD_ENCRYPTION_FEATURE
Use this environment variable to disable the dashboard encryption feature.
By default, encryption is enabled. To disable it, set the value to DISABLED
VIZZLY_REMOTE_CONFIG_ENDPOINT
Set an absolute URL where we can load Dynamic Query Engine configs from.
To learn more about its usage, follow the documentation for remote configs.