home User Guide Getting Started Help Center Documentation Community Training Certification
Looker keyboard_arrow_down
language keyboard_arrow_down
Looker Startup Options

There are a number of Looker startup settings that can optionally be configured. If you do not need to change these options, you may start Looker without them.

Startup Options List

Below is the list of current startup options in alphabetical order. You can also display a list of startup options by running the Looker startup script with the option --help.

Option Description
--alerts-scheduler-threads=<i> Number of simultaneous scheduled alerts (default: 3).
--api-server-max-threads=<i> Maximum threads count for Puma API Server.
--api-server-min-threads=<i> Minimum threads count for Puma API Server.
--application-server-max-threads=<i> Maximum threads count for Puma Application Server.
--application-server-min-threads=<i> Minimum threads count for Puma Application Server.
--async-results-cache-time=<i> Length of time to keep async results cached (default: 300).
--cdn-hosts=<s> Comma separated hostnames for CDN pool (default: static-a.lookercdn.com,static-b.lookercdn.com).
--cipher-key-file=<s> Path to file containing cipher key (legacy encryption only).
--cloud-trace-json-file=<s> JSON file containing the service account credentials to upload trace data to Google Cloud Trace.
--cloud-trace-sample-rate=<f> The rate (0-1) with which to sample traces. Defaults to 1% (default: 0.01).
--clustered Whether this server is part of a cluster.
--concurrent-render-jobs=<i> Number of simultaneous PhantomJS or Chromium rendering processes (default: 2).
--core-on-loopback Exposes Core API on loopback interface.
--core-port=<i> Port to run core on (default: 19999).
--csp-reporting-header=<s> The body of the CSP header.
-d, --internal-db-creds=<s> Path to YAML file with DB credentials.
--daemonize, --no-daemonize Runs as daemon (default: true).
--dashboard-query-throttle=<i> Deprecated. Use --per-user-query-limit instead.
--default-mailer-port=<i> Port over which to send mail when using default mailer (default: 587).
--disable-db-log Disables logging of internal DB queries.
--dogstatsd-host-ip=<s> Datadog statsd server host IP.
--dogstatsd-host-port=<i> Datadog server host port.
-e, --help Displays this list of startup options.
--error-emails-to=<s> Error emails to <email address>.
--experimental-features=<s> Comma separated list of allowed experimental features.
--experimental-routes=<s> Comma separated list of allowed experimental routes that generate routes with the suffix of -next.
--force-cdn Force enables CDN.
--force-cipher-key Disregards safeguards for the cipher key settings (legacy encryption only).
--force-enable-pendo Enables Pendo guides on whitelabel instances or in embed contexts.
--force-error-emails Forces Looker to report errors via email.
--force-gcm-encryption Forces GCM encryption (works only for new installs).
--force-mismatched-internal-db Allows use of out-of-sync Looker internal DB.
--force-no-cdn Force disables CDN.
--git-performance-logging Enables logging of JGit performance.
--google-analytics-tracker-id=<s> Tracking ID to use for sending pageviews to additional Google Analytics trackers.
-h, --hosted Hosted by Looker.
-H, --hostname=<s> Hostname for node-to-node communication.
--in-memory-cache-size=<i> Size (in MB) of in memory cache (default: 50).
--internal-analytics-connection-file=<s> YAML file describing the internal analytics connection that hosts data for system__activity model. This option is for use with a read replica backend database only.
--internal-analytics-connection-pool-size=<i> The number of simultaneous DB connections that may run system activity model queries. This option is for use with a read replica backend database only.
--internal-analytics-retention-days=<i> The number of days to retain history data in the internal database. This does not affect any ETL process. The default is 90. This option is for use with a read replica backend database only.
--k8s-deployment-api-s3bucket-url=<s> URL where this Looker process can write S3 bucket credentials to be persisted as Kubernetes secrets.
--lock-out-lookers No longer supported.
--log-format=<s> Log format is one of [text, json] (default: text).
--log-level=<s> Log level (default: info).
--log-to-file, --no-log-to-file Sends log output to Looker log file (default: true).
--loose-cipher-key-file Don’t require 0600 permissions for cipher key file (legacy encryption only).
--marketplace=<s> Running in a Looker Marketplace instance.
--max-async-threads=<i> Maximum number of async query threads (default: 200).
--max-configurable-db-connections=<i> Maximum connection count allowed for a customer DB connection in the UI
--max-pdt-regen-threads=<i> Maximum number of PDT regenerator threads.
--max-unstreamed-limit=<i> Sets the maximum number of rows that can be downloaded for downloads that are not streamed (default: 100,000).
--min-pdt-regen-threads=<i> Minimum threads count for PDT Regenerator.
-n, --node-to-node-port=<i> Port for node-to-node communication (default: 1551).
--new-cipher-key-file=<s> Path to file containing new cipher key (legacy encryption only).
--on-disk-cache-size=<i> Size (in MB) of disk cache (default: 2000).
-p, --port=<i> Port to run on (default: 9999).
--per-user-query-limit=<i> Limits number of concurrent queries per user (default: 15).
--per-user-query-timeout=<i> Length of per-user timeout to wait for connection (default: 600).
--prefer-ipv4 Prefer IPv4.
--public-embed-auth-param-file=<s> Authentication parameter file for public auth.
--public-host-url If the public_host_url license feature is enabled, this option enables admins to specify a public_host_url hostname so that the Looker Action API callback URIs are constructed with the public_host_url rather than the default host URL in Looker. The input for the startup option should be https://<my.host.name> with no trailing slash in the URL.
-q, --queue-broker-port=<i> Port for queue broker (default: 61616).
--qm-long-poll-sleep-interval-in-seconds=<i> Sleep interval before the long poll API is going to check if results are available
--qm-long-poll-timeout-in-seconds=<i> Maximum server side timeout for the long poll API before it returns to the client
--query-manager-max-threads=<i> Maximum threads count for Query Manager.
--query-manager-min-threads=<i> Minimum threads count for Query Manager.
-r, --root Allows running as root.

Looker does not require root privileges for normal operation. For security purposes, we recommend you run Looker in a non-root account. Use the option to run as root only when required, for example, if requested by a Looker analyst for troubleshooting purposes.
--report-backend-errors, --no-report-backend-errors Reports errors from the backend (default: true).
--report-frontend-errors, --no-report-frontend-errors Reports errors from the frontend (default: true).
-S, --ssh-tunnel-sidecar-url=<s> The base URL used to connect to the SSH Tunnel Server Sidecar.
--scheduler-query-limit=<i> Limits number of concurrent scheduled queries (default: 10).
--scheduler-query-timeout=<i> Length of scheduler timeout to wait for connection (default: 1200).
--scheduler-start-delay=<i> Number of seconds to delay task runner startup (default: 60).
--scheduler-threads=<i> Number of simultaneous scheduled tasks (default: 3).
--search-service Enables Search Service.
--self-signup Allows anyone to create an account for themselves.
--shared-storage-dir=<s> Path to network file system shared storage.
--snowplow-host=<s> Extra Snowplow collector.
--ssl, --no-ssl Uses SSL (default: true).
--ssl-ca-cert=<s> Deprecated. Use --ssl-keystore instead.
--ssl-cert=<s> Deprecated. Use --ssl-keystore instead.
--ssl-key=<s> Deprecated. Use --ssl-keystore instead.
--ssl-keystore-pass-file=<s> Path to file containing ssl-keystore password.
--ssl-keystore-pass=<s> Password for ssl-keystore file.
--ssl-keystore=<s> Path to keystore file for SSL.
--ssl-provided-externally-by=<s> Provides the host:port for an external SSL provider as accessible from the server running Looker. When not specified, the Looker app server provides SSL.

Here is an example for an SSL proxy in front of a Looker cluster:


Here is an example of an SSL provider on the same host as your Looker instance:


A null value indicates that the Looker app server provides SSL. If your Looker instance is running on a server with restricted access to the public internet, you will need to specify an IP address on your internal network that is reachable by the server for your Looker instance.
--ssl-provided-externally Deprecated. Use --ssl-provided-externally-by instead.
--staging Runs server as staging. This option will prevent your staging instance from sending out scheduled reports. However, the staging instance will still continue to run scheduled tasks and will send out error emails to scheduled plan owners if the scheduled task has any issues.
--staging-override-email=<s> Sends emails on a staging instance to this address instead of their normal destination.
--super-max-query-limit Restricted usage. Sets the maximum rows that can be returned in Explore or query results, replacing the default limit of 5,000 rows.
--task-monitor-abandoned-query-in-seconds=<i> Duration elapsed since the last access for a task to consider the query task abandoned
--task-monitor-sleep-interval-in-seconds=<i> Sleep interval before task tracking thread can check if tasks are abandoned or not
--unlimited-scheduler-threads=<i> Number of simultaneous unlimited scheduled tasks (default: 3).
--use-custom-jdbc-config Whether to use custom JDBC driver config.
--use-maestro Uses Maestro for job orchestration.
--user-db-credentials Restricted usage. Connections can use per-user credentials.
-v, --version Prints version and exits.
--worker-admin-port=<i> For Looker internal use only.
--worker-eval For Looker internal use only.
--worker-service-host=<s> For Looker internal use only.
--worker-service-port=<i> For Looker internal use only.

Credentials File Format

If you have changed the application database to MySQL, you’ll need a credentials file named looker-db.yml that includes these settings:

dialect: mysql
database: YOUR_DBNAME

If your MySQL database requires an SSL connection, the looker-db.yml file also requires the following:

ssl: true

Making Startup Options Permanent

The preferred method for making startup configuration settings permanent is to create a file named lookerstart.cfg in the Looker application directory. This file will be executed by the Looker startup script that was provided with your looker.jar. The lookerstart.cfg file is the recommended place to set environment variables for JAVAARGS and LOOKERARGS because they will not be overwritten when new versions of the Looker startup script are installed.

Here is an example lookerstart.cfg, which disables Looker’s SSL and sets it to run on port 8080:

LOOKERARGS="--no-ssl --port 8080"

Looker will need to be restarted after making changes to lookerstart.cfg.

Next Step

After you have configured Looker startup options you’re ready to configure your SSL certificate for proper HTTPS.