InfluxDB configuration options

This page documents an earlier version of InfluxDB. InfluxDB v2.7 is the latest stable version. View this page in the v2.7 documentation.

Customize your InfluxDB configuration by using influxd configuration flags, setting environment variables, or defining configuration options in a configuration file.

View your runtime server configuration

Use the influx CLI or the InfluxDB API to get the runtime server configuration of your InfluxDB instance.

Server configuration commands require an Operator token.

View your server configuration with the CLI

Use the influx server-config command to retrieve your runtime server configuration.

  1. influx server-config

View your server configuration with the API

Use the /api/v2/config InfluxDB API endpoint to retrieve your runtime server configuration.

  1. GET http://localhost:8086/api/v2/config

Configuration precedence

InfluxDB honors configuration settings using the following precedence:

  1. influxd flags
  2. Environment variables
  3. Configuration file settings

InfluxDB configuration file

When influxd starts, it checks for a file named config.* in the current working directory. The file extension depends on the syntax of the configuration file. InfluxDB configuration files support the following syntaxes:

  • YAML (.yaml, .yml)
  • TOML (.toml)
  • JSON (.json)

To customize the directory path of the configuration file, set the INFLUXD_CONFIG_PATH environment variable to your custom path.

  1. export INFLUXD_CONFIG_PATH=/path/to/custom/config/directory

On startup, influxd will check for a config.* in the INFLUXD_CONFIG_PATH directory.

Example configuration file

YAML TOML JSON

  1. query-concurrency: 20
  2. query-queue-size: 15
  3. secret-store: vault
  4. session-length: 120
  5. tls-cert: /path/to/influxdb.crt
  6. tls-key: /path/to/influxdb.key
  1. query-concurrency = 20
  2. query-queue-size = 15
  3. secret-store = "vault"
  4. session-length = 120
  5. tls-cert = "/path/to/influxdb.crt"
  6. tls-key = "/path/to/influxdb.key"
  1. {
  2. "query-concurrency": 20,
  3. "query-queue-size": 15,
  4. "secret-store": "vault",
  5. "session-length": 120,
  6. "tls-cert": "/path/to/influxdb.crt",
  7. "tls-key": "/path/to/influxdb.key"
  8. }

Only non-default settings need to be defined in the configuration file.

Configuration options

To configure InfluxDB, use the following configuration options when starting the influxd service:


assets-path

Override the default InfluxDB user interface (UI) assets by serving assets from the specified directory. Typically, InfluxData internal use only.

influxd flagEnvironment variableConfiguration key
—assets-pathINFLUXD_ASSETS_PATHassets-path
influxd flag
  1. influxd --assets-path=/path/to/custom/assets-dir
Environment variable
  1. export INFLUXD_ASSETS_PATH=/path/to/custom/assets-dir
Configuration file

YAML TOML JSON

  1. assets-path: /path/to/custom/assets-dir
  1. assets-path = "/path/to/custom/assets-dir"
  1. {
  2. "assets-path": "/path/to/custom/assets-dir"
  3. }

bolt-path

Path to the BoltDB database. BoltDB is a key value store written in Go. InfluxDB uses BoltDB to store data including organization and user information, UI data, REST resources, and other key value data.

Default: ~/.influxdbv2/influxd.bolt

influxd flagEnvironment variableConfiguration key
—bolt-pathINFLUXD_BOLT_PATHbolt-path
influxd flag
  1. influxd --bolt-path=~/.influxdbv2/influxd.bolt
Environment variable
  1. export INFLUXD_BOLT_PATH=~/.influxdbv2/influxd.bolt
Configuration file

YAML TOML JSON

  1. bolt-path: ~/.influxdbv2/influxd.bolt
  1. bolt-path = "~/.influxdbv2/influxd.bolt"
  1. {
  2. "bolt-path": "~/.influxdbv2/influxd.bolt"
  3. }

e2e-testing

Add a /debug/flush endpoint to the InfluxDB HTTP API to clear stores. InfluxData uses this endpoint in end-to-end testing.

influxd flagEnvironment variableConfiguration key
—e2e-testingINFLUXD_E2E_TESTINGe2e-testing
influxd flag
  1. influxd --e2e-testing
Environment variable
  1. export INFLUXD_E2E_TESTING=true
Configuration file

YAML TOML JSON

  1. e2e-testing: true
  1. e2e-testing = true
  1. {
  2. "e2e-testing": true
  3. }

engine-path

Path to persistent storage engine files where InfluxDB stores all Time-Structure Merge Tree (TSM) data on disk.

Default: ~/.influxdbv2/engine

influxd flagEnvironment variableConfiguration key
—engine-pathINFLUXD_ENGINE_PATHengine-path
influxd flag
  1. influxd --engine-path=~/.influxdbv2/engine
Environment variable
  1. export INFLUXD_ENGINE_PATH=~/.influxdbv2/engine
Configuration file

YAML TOML JSON

  1. engine-path: ~/.influxdbv2/engine
  1. engine-path = "~/.influxdbv2/engine"
  1. {
  2. "engine-path": "~/.influxdbv2/engine"
  3. }

feature-flags

Enable, disable, or override default values for feature flags.

Feature flags are used to develop and test experimental features and are intended for internal use only.

influxd flagEnvironment variableConfiguration key
—feature-flagsINFLUXD_FEATURE_FLAGSfeature-flags
influxd flag
  1. influxd --feature-flags flag1=value2,flag2=value2
Environment variable
  1. export INFLUXD_FEATURE_FLAGS="{\"flag1\":\value1\",\"flag2\":\"value2\"}"
Configuration file

YAML TOML JSON

  1. feature-flags:
  2. flag1: "value1"
  3. flag2: "value2"
  1. [feature-flags]
  2. flag1 = "value1"
  3. glag2 = "value2"
  1. {
  2. "feature-flags": {
  3. "flag1": "value1",
  4. "flag2": "value2"
  5. }
  6. }

flux-log-enabled

Include option to show detailed logs for Flux queries, including the following log fields:

  • compiler_type: Compiler used for processing the query (will always be Flux).
  • response_size: Size of the response, in bytes.
  • query: The textual representation of the query.
  • err: Errors encountered while processing the query.
  • stat_total_duration: Total duration to process the query.
  • stat_compile_duration: Duration to compile the query.
  • stat_execute_duration: Duration to execute the query.
  • stat_max_allocated: Maximum amount of memory allocated while processing the query, in - bytes.
  • stat_total_allocated: Total amount of memory allocated while processing the query, in bytes. This includes memory that was freed and then used again.

Default: false

influxd flagEnvironment variableConfiguration key
—flux-log-enabledINFLUXD_FLUX_LOG_ENABLEDflux-log-enabled
influxd flag
  1. influxd --flux-log-enabled=true
Environment variable
  1. export INFLUXD_FLUX_LOG_ENABLED=true
Configuration file

YAML TOML JSON

  1. flux-log-enabled: true
  1. flux-log-enabled = "true"
  1. {
  2. "flux-log-enabled": "true"
  3. }

hardening-enabled

Enable additional security features in InfluxDB. Default: false

influxd flagEnvironment variableConfiguration key
—hardening-enabledINFLUXD_HARDENING_ENABLEDhardening-enabled
influxd flag
  1. influxd --hardening-enabled
Environment variable
  1. export INFLUXD_HARDENING_ENABLED=true
Configuration file

YAML TOML JSON

  1. hardening-enabled: true
  1. hardening-enabled = true
  1. {
  2. "hardening-enabled": true
  3. }

http-bind-address

Bind address for the InfluxDB HTTP API. Customize the URL and port for the InfluxDB API and UI.

Default: :8086

influxd flagEnvironment variableConfiguration key
—http-bind-addressINFLUXD_HTTP_BIND_ADDRESShttp-bind-address
influxd flag
  1. influxd --http-bind-address=:8086
Environment variable
  1. export INFLUXD_HTTP_BIND_ADDRESS=:8086
Configuration file

YAML TOML JSON

  1. http-bind-address: ":8086"
  1. http-bind-address = ":8086"
  1. {
  2. "http-bind-address": ":8086"
  3. }

http-idle-timeout

Maximum duration the server should keep established connections alive while waiting for new requests. Set to 0 for no timeout.

Default: 3m0s

influxd flagEnvironment variableConfiguration key
—http-idle-timeoutINFLUXD_HTTP_IDLE_TIMEOUThttp-idle-timeout
influxd flag
  1. influxd --http-idle-timeout=3m0s
Environment variable
  1. export INFLUXD_HTTP_IDLE_TIMEOUT=3m0s
Configuration file

YAML TOML JSON

  1. http-idle-timeout: 3m0s
  1. http-idle-timeout = "3m0s"
  1. {
  2. "http-idle-timeout": "3m0s"
  3. }

http-read-header-timeout

Maximum duration the server should try to read HTTP headers for new requests. Set to 0 for no timeout.

Default: 10s

influxd flagEnvironment variableConfiguration key
—http-read-header-timeoutINFLUXD_HTTP_READ_HEADER_TIMEOUThttp-read-header-timeout
influxd flag
  1. influxd --http-read-header-timeout=10s
Environment variable
  1. export INFLUXD_HTTP_READ_HEADER_TIMEOUT=10s
Configuration file

YAML TOML JSON

  1. http-read-header-timeout: 10s
  1. http-read-header-timeout = "10s"
  1. {
  2. "http-read-header-timeout": "10s"
  3. }

http-read-timeout

Maximum duration the server should try to read the entirety of new requests. Set to 0 for no timeout.

Default: 0

Set timeouts specific to your workload

Although no http-read-timeout is set by default, we strongly recommend setting a timeout specific to your workload. HTTP timeouts protect against large amounts of open connections that could potentially hurt performance.

influxd flagEnvironment variableConfiguration key
—http-read-timeoutINFLUXD_HTTP_READ_TIMEOUThttp-read-timeout
influxd flag
  1. influxd --http-read-timeout=10s
Environment variable
  1. export INFLUXD_HTTP_READ_TIMEOUT=10s
Configuration file

YAML TOML JSON

  1. http-read-timeout: 10s
  1. http-read-timeout = "10s"
  1. {
  2. "http-read-timeout": "10s"
  3. }

http-write-timeout

Maximum duration the server should spend processing and responding to write requests. Set to 0 for no timeout.

Default: 0

Set timeouts specific to your workload

Although no http-write-timeout is set by default, we strongly recommend setting a timeout specific to your workload. HTTP timeouts protect against large amounts of open connections that could potentially hurt performance.

influxd flagEnvironment variableConfiguration key
—http-write-timeoutINFLUXD_HTTP_WRITE_TIMEOUThttp-write-timeout
influxd flag
  1. influxd --http-write-timeout=10s
Environment variable
  1. export INFLUXD_HTTP_WRITE_TIMEOUT=10s
Configuration file

YAML TOML JSON

  1. http-write-timeout: 10s
  1. http-write-timeout = "10s"
  1. {
  2. "http-write-timeout": "10s"
  3. }

influxql-max-select-buckets

Maximum number of group by time buckets a SELECT statement can create. 0 allows an unlimited number of buckets.

Default: 0

influxd flagEnvironment variableConfiguration key
—influxql-max-select-bucketsINFLUXD_INFLUXQL_MAX_SELECT_BUCKETSinfluxql-max-select-buckets
influxd flag
  1. influxd --influxql-max-select-buckets=0
Environment variable
  1. export INFLUXD_INFLUXQL_MAX_SELECT_BUCKETS=0
Configuration file

YAML TOML JSON

  1. influxql-max-select-buckets: 0
  1. influxql-max-select-buckets = 0
  1. {
  2. "influxql-max-select-buckets": 0
  3. }

influxql-max-select-point

Maximum number of points a SELECT statement can process. 0 allows an unlimited number of points. InfluxDB checks the point count every second (so queries exceeding the maximum aren’t immediately aborted).

Default: 0

influxd flagEnvironment variableConfiguration key
—influxql-max-select-pointINFLUXD_INFLUXQL_MAX_SELECT_POINTinfluxql-max-select-point
influxd flag
  1. influxd --influxql-max-select-point=0
Environment variable
  1. export INFLUXD_INFLUXQL_MAX_SELECT_POINT=0
Configuration file

YAML TOML JSON

  1. influxql-max-select-point: 0
  1. influxql-max-select-point = 0
  1. {
  2. "influxql-max-select-point": 0
  3. }

influxql-max-select-series

Maximum number of series a SELECT statement can return. 0 allows an unlimited number of series.

Default: 0

influxd flagEnvironment variableConfiguration key
—influxql-max-select-seriesINFLUXD_INFLUXQL_MAX_SELECT_SERIESinfluxql-max-select-series
influxd flag
  1. influxd --influxql-max-select-series=0
Environment variable
  1. export INFLUXD_INFLUXQL_MAX_SELECT_SERIES=0
Configuration file

YAML TOML JSON

  1. influxql-max-select-series: 0
  1. influxql-max-select-series = 0
  1. {
  2. "influxql-max-select-series": 0
  3. }

instance-id

Identifies edge nodes during replication, and prevents collisions if two edge nodes write the same measurement,tagset.

influxd flagEnvironment variableConfiguration key
—instance-idINFLUXD_INSTANCE_IDinstance-id
influxd flag
  1. influxd --instance-id=:8086
Environment variable
  1. export INFLUXD_INSTANCE_ID=:8086
Configuration file

YAML TOML JSON

  1. instance-id: ":8086"
  1. instance-id = ":8086"
  1. {
  2. "instance-id": ":8086"
  3. }

log-level

Log output level. InfluxDB outputs log entries with severity levels greater than or equal to the level specified.

Options: debug, info, error
Default: info

influxd flagEnvironment variableConfiguration key
—log-levelINFLUXD_LOG_LEVELlog-level
influxd flag
  1. influxd --log-level=info
Environment variable
  1. export INFLUXD_LOG_LEVEL=info
Configuration file

YAML TOML JSON

  1. log-level: info
  1. log-level = "info"
  1. {
  2. "log-level": "info"
  3. }

metrics-disabled

Disable the HTTP /metrics endpoint which exposes internal InfluxDB metrics.

Default: false

influxd flagEnvironment variableConfiguration key
—metrics-disabledINFLUXD_METRICS_DISABLEDmetrics-disabled
influxd flag
  1. influxd --metrics-disabled
Environment variable
  1. export INFLUXD_METRICS_DISABLED=true
Configuration file

YAML TOML JSON

  1. metrics-disabled: true
  1. metrics-disabled = true
  1. {
  2. "metrics-disabled": true
  3. }

nats-max-payload-bytes

nats-max-payload-bytes was deprecated in InfluxDB 2.2 and no longer has any effect.

Maximum number of bytes allowed in a NATS message payload.

Default: 1048576

influxd flagEnvironment variableConfiguration key
—nats-max-payload-bytesINFLUXD_NATS_MAX_PAYLOAD_BYTESnats-max-payload-bytes
influxd flag
  1. influxd --nats-max-payload-bytes=1048576
Environment variable
  1. export INFLUXD_NATS_MAX_PAYLOAD_BYTES=1048576
Configuration file

YAML TOML JSON

  1. nats-max-payload-bytes: 1048576
  1. nats-max-payload-bytes = 1048576
  1. {
  2. "nats-max-payload-bytes": 1048576
  3. }

nats-port

nats-port was deprecated in InfluxDB 2.2 and no longer has any effect.

Port for the NATS streaming server. -1 selects a random port.

Default: -1

influxd flagEnvironment variableConfiguration key
—nats-portINFLUXD_NATS_PORTnats-port
influxd flag
  1. influxd --nats-port=-1
Environment variable
  1. export INFLUXD_NATS_PORT=-1
Configuration file

YAML TOML JSON

  1. nats-port: -1
  1. nats-port = -1
  1. {
  2. "nats-port": -1
  3. }

no-tasks

Disable the task scheduler. If problematic tasks prevent InfluxDB from starting, use this option to start InfluxDB without scheduling or executing tasks.

Default: false

influxd flagEnvironment variableConfiguration key
—no-tasksINFLUXD_NO_TASKSno-tasks
influxd flag
  1. influxd --no-tasks
Environment variable
  1. export INFLUXD_NO_TASKS=true
Configuration file

YAML TOML JSON

  1. no-tasks: true
  1. no-tasks = true
  1. {
  2. "no-tasks": true
  3. }

pprof-disabled

Disable the /debug/pprof HTTP endpoint. This endpoint provides runtime profiling data and can be helpful when debugging.

Default: false

influxd flagEnvironment variableConfiguration key
—pprof-disabledINFLUXD_PPROF_DISABLEDpprof-disabled
influxd flag
  1. influxd --pprof-disabled
Environment variable
  1. export INFLUXD_PPROF_DISABLED=true
Configuration file

YAML TOML JSON

  1. pprof-disabled: true
  1. pprof-disabled = true
  1. {
  2. "pprof-disabled": true
  3. }

query-concurrency

Number of queries allowed to execute concurrently.

Default: 10

influxd flagEnvironment variableConfiguration key
—query-concurrencyINFLUXD_QUERY_CONCURRENCYquery-concurrency
influxd flag
  1. influxd --query-concurrency=10
Environment variable
  1. export INFLUXD_QUERY_CONCURRENCY=10
Configuration file

YAML TOML JSON

  1. query-concurrency: 10
  1. query-concurrency = 10
  1. {
  2. "query-concurrency": 10
  3. }

query-initial-memory-bytes

Initial bytes of memory allocated for a query.

Default: equal to query-memory-bytes

influxd flagEnvironment variableConfiguration key
—query-initial-memory-bytesINFLUXD_QUERY_INITIAL_MEMORY_BYTESquery-initial-memory-bytes
influxd flag
  1. influxd --query-initial-memory-bytes=10485760
Environment variable
  1. export INFLUXD_QUERY_INITIAL_MEMORY_BYTES=10485760
Configuration file

YAML TOML JSON

  1. query-initial-memory-bytes: 10485760
  1. query-initial-memory-bytes = 10485760
  1. {
  2. "query-initial-memory-bytes": 10485760
  3. }

query-max-memory-bytes

Maximum total bytes of memory allowed for queries.

Default: equal to query-concurrency × query-memory-bytes

influxd flagEnvironment variableConfiguration key
—query-max-memory-bytesINFLUXD_QUERY_MAX_MEMORY_BYTESquery-max-memory-bytes
influxd flag
  1. influxd --query-max-memory-bytes=104857600
Environment variable
  1. export INFLUXD_QUERY_MAX_MEMORY_BYTES=104857600
Configuration file

YAML TOML JSON

  1. query-max-memory-bytes: 104857600
  1. query-max-memory-bytes = 104857600
  1. {
  2. "query-max-memory-bytes": 104857600
  3. }

query-memory-bytes

Maximum bytes of memory allowed for a single query.

Default: unlimited

Must be greater than or equal to query-initial-memory-bytes.

influxd flagEnvironment variableConfiguration key
—query-memory-bytesINFLUXD_QUERY_MEMORY_BYTESquery-memory-bytes
influxd flag
  1. influxd --query-memory-bytes=10485760
Environment variable
  1. export INFLUXD_QUERY_MEMORY_BYTES=10485760
Configuration file

YAML TOML JSON

  1. query-memory-bytes: 10485760
  1. query-memory-bytes = 10485760
  1. {
  2. "query-memory-bytes": 10485760
  3. }

query-queue-size

Maximum number of queries allowed in execution queue. When queue limit is reached, new queries are rejected.

Default: 10

influxd flagEnvironment variableConfiguration key
—query-queue-sizeINFLUXD_QUERY_QUEUE_SIZEquery-queue-size
influxd flag
  1. influxd --query-queue-size=10
Environment variable
  1. export INFLUXD_QUERY_QUEUE_SIZE=10
Configuration file

YAML TOML JSON

  1. query-queue-size: 10
  1. query-queue-size = 10
  1. {
  2. "query-queue-size": 10
  3. }

reporting-disabled

Disables sending telemetry data to InfluxData. The InfluxData telemetry page provides information about what data is collected and how InfluxData uses it.

Default: false

influxd flagEnvironment variableConfiguration key
—reporting-disabledINFLUXD_REPORTING_DISABLEDreporting-disabled
influxd flag
  1. influxd --reporting-disabled
Environment variable
  1. export INFLUXD_REPORTING_DISABLED=true
Configuration file

YAML TOML JSON

  1. reporting-disabled: true
  1. reporting-disabled = true
  1. {
  2. "reporting-disabled": true
  3. }

secret-store

Specifies the data store for secrets such as passwords and tokens. Store secrets in either the InfluxDB internal BoltDB or in Vault.

Options: bolt, vault
Default: bolt

influxd flagEnvironment variableConfiguration key
—secret-storeINFLUXD_SECRET_STOREsecret-store
influxd flag
  1. influxd --secret-store=bolt
Environment variable
  1. export INFLUXD_SECRET_STORE=bolt
Configuration file

YAML TOML JSON

  1. secret-store: bolt
  1. secret-store = "bolt"
  1. {
  2. "secret-store": "bolt"
  3. }

session-length

Specifies the Time to Live (TTL) in minutes for newly created user sessions.

Default: 60

influxd flagEnvironment variableConfiguration key
—session-lengthINFLUXD_SESSION_LENGTHsession-length
influxd flag
  1. influxd --session-length=60
Environment variable
  1. export INFLUXD_SESSION_LENGTH=60
Configuration file

YAML TOML JSON

  1. session-length: 60
  1. session-length = 60
  1. {
  2. "session-length": 60
  3. }

session-renew-disabled

Disables automatically extending a user’s session TTL on each request. By default, every request sets the session’s expiration time to five minutes from now. When disabled, sessions expire after the specified session length and the user is redirected to the login page, even if recently active.

Default: false

influxd flagEnvironment variableConfiguration key
—session-renew-disabledINFLUXD_SESSION_RENEW_DISABLEDsession-renew-disabled
influxd flag
  1. influxd --session-renew-disabled
Environment variable
  1. export INFLUXD_SESSION_RENEW_DISABLED=true
Configuration file

YAML TOML JSON

  1. session-renew-disabled: true
  1. session-renew-disabled = true
  1. {
  2. "session-renew-disabled": true
  3. }

sqlite-path

Path to the SQLite database file. The SQLite database is used to store metadata for notebooks and annotations.

Default: influxd.sqlite in the same directory as the bolt-path.

influxd flagEnvironment variableConfiguration key
—sqlite-pathINFLUXD_SQLITE_PATHsqlite-path
influxd flag
  1. influxd --sqlite-path ~/.influxdbv2/influxd.sqlite
Environment variable
  1. export INFLUXD_SQLITE_PATH=~/.influxdbv2/influxd.sqlite
Configuration file

YAML TOML JSON

  1. sqlite-path: ~/.influxdbv2/influxd.sqlite
  1. sqlite-path = "~/.influxdbv2/influxd.sqlite"
  1. {
  2. "sqlite-path": "~/.influxdbv2/influxd.sqlite"
  3. }

storage-cache-max-memory-size

Maximum size (in bytes) a shard’s cache can reach before it starts rejecting writes.

Default: 1073741824

influxd flagEnvironment variableConfiguration key
—storage-cache-max-memory-sizeINFLUXD_STORAGE_CACHE_MAX_MEMORY_SIZEstorage-cache-max-memory-size
influxd flag
  1. influxd --storage-cache-max-memory-size=1073741824
Environment variable
  1. export INFLUXD_STORAGE_CACHE_MAX_MEMORY_SIZE=1073741824
Configuration file

YAML TOML JSON

  1. storage-cache-max-memory-size: 1073741824
  1. storage-cache-max-memory-size = 1073741824
  1. {
  2. "storage-cache-max-memory-size": 1073741824
  3. }

storage-cache-snapshot-memory-size

Size (in bytes) at which the storage engine will snapshot the cache and write it to a TSM file to make more memory available.

Default: 26214400)

influxd flagEnvironment variableConfiguration key
—storage-cache-snapshot-memory-sizeINFLUXD_STORAGE_CACHE_SNAPSHOT_MEMORY_SIZEstorage-cache-snapshot-memory-size
influxd flag
  1. influxd --storage-cache-snapshot-memory-size=26214400
Environment variable
  1. export INFLUXD_STORAGE_CACHE_SNAPSHOT_MEMORY_SIZE=26214400
Configuration file

YAML TOML JSON

  1. storage-cache-snapshot-memory-size: 26214400
  1. storage-cache-snapshot-memory-size = 26214400
  1. {
  2. "storage-cache-snapshot-memory-size": 26214400
  3. }

storage-cache-snapshot-write-cold-duration

Duration at which the storage engine will snapshot the cache and write it to a new TSM file if the shard hasn’t received writes or deletes.

Default: 10m0s

influxd flagEnvironment variableConfiguration key
—storage-cache-snapshot-write-cold-durationINFLUXD_STORAGE_CACHE_SNAPSHOT_WRITE_COLD_DURATIONstorage-cache-snapshot-write-cold-duration
influxd flag
  1. influxd --storage-cache-snapshot-write-cold-duration=10m0s
Environment variable
  1. export INFLUXD_STORAGE_CACHE_SNAPSHOT_WRITE_COLD_DURATION=10m0s
Configuration file

YAML TOML JSON

  1. storage-cache-snapshot-write-cold-duration: 10m0s
  1. storage-cache-snapshot-write-cold-duration = "10m0s"
  1. {
  2. "storage-cache-snapshot-write-cold-duration": "10m0s"
  3. }

storage-compact-full-write-cold-duration

Duration at which the storage engine will compact all TSM files in a shard if it hasn’t received writes or deletes.

Default: 4h0m0s

influxd flagEnvironment variableConfiguration key
—storage-compact-full-write-cold-durationINFLUXD_STORAGE_COMPACT_FULL_WRITE_COLD_DURATIONstorage-compact-full-write-cold-duration
influxd flag
  1. influxd --storage-compact-full-write-cold-duration=4h0m0s
Environment variable
  1. export INFLUXD_STORAGE_COMPACT_FULL_WRITE_COLD_DURATION=4h0m0s
Configuration file

YAML TOML JSON

  1. storage-compact-full-write-cold-duration: 4h0m0s
  1. storage-compact-full-write-cold-duration = "4h0m0s"
  1. {
  2. "storage-compact-full-write-cold-duration": "4h0m0s"
  3. }

storage-compact-throughput-burst

Rate limit (in bytes per second) that TSM compactions can write to disk.

Default: 50331648

influxd flagEnvironment variableConfiguration key
—storage-compact-throughput-burstINFLUXD_STORAGE_COMPACT_THROUGHPUT_BURSTstorage-compact-throughput-burst
influxd flag
  1. influxd --storage-compact-throughput-burst=50331648
Environment variable
  1. export INFLUXD_STORAGE_COMPACT_THROUGHPUT_BURST=50331648
Configuration file

YAML TOML JSON

  1. storage-compact-throughput-burst: 50331648
  1. storage-compact-throughput-burst = 50331648
  1. {
  2. "storage-compact-throughput-burst": 50331648
  3. }

storage-max-concurrent-compactions

Maximum number of full and level compactions that can run concurrently. A value of 0 results in 50% of runtime.GOMAXPROCS(0) used at runtime. Any number greater than zero limits compactions to that value. This setting does not apply to cache snapshotting.

Default: 0

influxd flagEnvironment variableConfiguration key
—storage-max-concurrent-compactionsINFLUXD_STORAGE_MAX_CONCURRENT_COMPACTIONSstorage-max-concurrent-compactions
influxd flag
  1. influxd --storage-max-concurrent-compactions=0
Environment variable
  1. export INFLUXD_STORAGE_MAX_CONCURRENT_COMPACTIONS=0
Configuration file

YAML TOML JSON

  1. storage-max-concurrent-compactions: 0
  1. storage-max-concurrent-compactions = 0
  1. {
  2. "storage-max-concurrent-compactions": 0
  3. }

storage-max-index-log-file-size

Size (in bytes) at which an index write-ahead log (WAL) file will compact into an index file. Lower sizes will cause log files to be compacted more quickly and result in lower heap usage at the expense of write throughput.

Default: 1048576

influxd flagEnvironment variableConfiguration key
—storage-max-index-log-file-sizeINFLUXD_STORAGE_MAX_INDEX_LOG_FILE_SIZEstorage-max-index-log-file-size
influxd flag
  1. influxd --storage-max-index-log-file-size=1048576
Environment variable
  1. export INFLUXD_STORAGE_MAX_INDEX_LOG_FILE_SIZE=1048576
Configuration file

YAML TOML JSON

  1. storage-max-index-log-file-size: 1048576
  1. storage-max-index-log-file-size = 1048576
  1. {
  2. "storage-max-index-log-file-size": 1048576
  3. }

storage-no-validate-field-size

Skip field size validation on incoming write requests.

Default: false

influxd flagEnvironment variableConfiguration key
—storage-no-validate-field-sizeINFLUXD_STORAGE_NO_VALIDATE_FIELD_SIZEstorage-no-validate-field-size
influxd flag
  1. influxd --storage-no-validate-field-size
Environment variable
  1. export INFLUXD_STORAGE_NO_VALIDATE_FIELD_SIZE=true
Configuration file

YAML TOML JSON

  1. storage-no-validate-field-size: true
  1. storage-no-validate-field-size = true
  1. {
  2. "storage-no-validate-field-size": true
  3. }

storage-retention-check-interval

Interval of retention policy enforcement checks.

Default: 30m0s

influxd flagEnvironment variableConfiguration key
—storage-retention-check-intervalINFLUXD_STORAGE_RETENTION_CHECK_INTERVALstorage-retention-check-interval
influxd flag
  1. influxd --storage-retention-check-interval=30m0s
Environment variable
  1. export INFLUXD_STORAGE_RETENTION_CHECK_INTERVAL=30m0s
Configuration file

YAML TOML JSON

  1. storage-retention-check-interval: 30m0s
  1. storage-retention-check-interval = "30m0s"
  1. {
  2. "storage-retention-check-interval": "30m0s"
  3. }

storage-series-file-max-concurrent-snapshot-compactions

Maximum number of snapshot compactions that can run concurrently across all series partitions in a database.

Default: 0

influxd flagEnvironment variableConfiguration key
—storage-series-file-max-concurrent-snapshot-compactionsINFLUXD_STORAGE_SERIES_FILE_MAX_CONCURRENT_SNAPSHOT_COMPACTIONSstorage-series-file-max-concurrent-snapshot-compactions
influxd flag
  1. influxd --storage-series-file-max-concurrent-snapshot-compactions=0
Environment variable
  1. export INFLUXD_STORAGE_SERIES_FILE_MAX_CONCURRENT_SNAPSHOT_COMPACTIONS=0
Configuration file

YAML TOML JSON

  1. storage-series-file-max-concurrent-snapshot-compactions: 0
  1. storage-series-file-max-concurrent-snapshot-compactions = 0
  1. {
  2. "storage-series-file-max-concurrent-snapshot-compactions": 0
  3. }

storage-series-id-set-cache-size

Size of the internal cache used in the TSI index to store previously calculated series results. Cached results are returned quickly rather than needing to be recalculated when a subsequent query with the same tag key/value predicate is executed. Setting this value to 0 will disable the cache and may decrease query performance.

Default: 100

This value should only be increased if the set of regularly used tag key/value predicates across all measurements for a database is larger than 100. An increase in cache size may lead to an increase in heap usage.

influxd flagEnvironment variableConfiguration key
—storage-series-id-set-cache-sizeINFLUXD_STORAGE_SERIES_ID_SET_CACHE_SIZEstorage-series-id-set-cache-size
influxd flag
  1. influxd --storage-series-id-set-cache-size=100
Environment variable
  1. export INFLUXD_STORAGE_SERIES_ID_SET_CACHE_SIZE=100
Configuration file

YAML TOML JSON

  1. storage-series-id-set-cache-size: 100
  1. storage-series-id-set-cache-size = 100
  1. {
  2. "storage-series-id-set-cache-size": 100
  3. }

storage-shard-precreator-advance-period

The time before a shard group’s end-time that the successor shard group is created.

Default: 30m0s

influxd flagEnvironment variableConfiguration key
—storage-shard-precreator-advance-periodINFLUXD_STORAGE_SHARD_PRECREATOR_ADVANCE_PERIODstorage-shard-precreator-advance-period
influxd flag
  1. influxd --storage-shard-precreator-advance-period=30m0s
Environment variable
  1. export INFLUXD_STORAGE_SHARD_PRECREATOR_ADVANCE_PERIOD=30m0s
Configuration file

YAML TOML JSON

  1. storage-shard-precreator-advance-period: 30m0s
  1. storage-shard-precreator-advance-period = "30m0s"
  1. {
  2. "storage-shard-precreator-advance-period": "30m0s"
  3. }

storage-shard-precreator-check-interval

Interval of pre-create new shards check.

Default: 10m0s

influxd flagEnvironment variableConfiguration key
—storage-shard-precreator-check-intervalINFLUXD_STORAGE_SHARD_PRECREATOR_CHECK_INTERVALstorage-shard-precreator-check-interval
influxd flag
  1. influxd --storage-shard-precreator-check-interval=10m0s
Environment variable
  1. export INFLUXD_STORAGE_SHARD_PRECREATOR_CHECK_INTERVAL=10m0s
Configuration file

YAML TOML JSON

  1. storage-shard-precreator-check-interval: 10m0s
  1. storage-shard-precreator-check-interval = "10m0s"
  1. {
  2. "storage-shard-precreator-check-interval": "10m0s"
  3. }

storage-tsm-use-madv-willneed

Inform the kernel that InfluxDB intends to page in mmap’d sections of TSM files.

Default: false

influxd flagEnvironment variableConfiguration key
—storage-tsm-use-madv-willneedINFLUXD_STORAGE_TSM_USE_MADV_WILLNEEDstorage-tsm-use-madv-willneed
influxd flag
  1. influxd --storage-tsm-use-madv-willneed
Environment variable
  1. export INFLUXD_STORAGE_TSM_USE_MADV_WILLNEED=true
Configuration file

YAML TOML JSON

  1. storage-tsm-use-madv-willneed: true
  1. storage-tsm-use-madv-willneed = true
  1. {
  2. "storage-tsm-use-madv-willneed": true
  3. }

storage-validate-keys

Validate incoming writes to ensure keys have only valid unicode characters.

Default: false

influxd flagEnvironment variableConfiguration key
—storage-validate-keysINFLUXD_STORAGE_VALIDATE_KEYSstorage-validate-keys
influxd flag
  1. influxd --storage-validate-keys
Environment variable
  1. export INFLUXD_STORAGE_VALIDATE_KEYS=true
Configuration file

YAML TOML JSON

  1. storage-validate-keys: true
  1. storage-validate-keys = true
  1. {
  2. "storage-validate-keys": true
  3. }

storage-wal-fsync-delay

Duration a write will wait before fsyncing. A duration greater than 0 batches multiple fsync calls. This is useful for slower disks or when WAL write contention is present.

Default: 0s

influxd flagEnvironment variableConfiguration key
—storage-wal-fsync-delayINFLUXD_STORAGE_WAL_FSYNC_DELAYstorage-wal-fsync-delay
influxd flag
  1. influxd --storage-wal-fsync-delay=0s
Environment variable
  1. export INFLUXD_STORAGE_WAL_FSYNC_DELAY=0s
Configuration file

YAML TOML JSON

  1. storage-wal-fsync-delay: 0s
  1. storage-wal-fsync-delay = "0s"
  1. {
  2. "storage-wal-fsync-delay": "0s"
  3. }

storage-wal-max-concurrent-writes

Maximum number writes to the WAL directory to attempt at the same time.

Default: 0 (number of processing units available × 2)

influxd flagEnvironment variableConfiguration key
—storage-wal-max-concurrent-writesINFLUXD_STORAGE_WAL_MAX_CONCURRENT_WRITESstorage-wal-max-concurrent-writes
influxd flag
  1. influxd --storage-wal-max-concurrent-writes=0
Environment variable
  1. export INFLUXD_STORAGE_WAL_MAX_CONCURRENT_WRITES=0
Configuration file

YAML TOML JSON

  1. storage-wal-max-concurrent-writes: 0
  1. storage-wal-max-concurrent-writes = 0
  1. {
  2. "storage-wal-max-concurrent-writes": 0
  3. }

storage-wal-max-write-delay

Maximum amount of time a write request to the WAL directory will wait when the the maximum number of concurrent active writes to the WAL directory has been met. Set to 0 to disable the timeout.

Default: 10m

influxd flagEnvironment variableConfiguration key
—storage-wal-max-write-delayINFLUXD_STORAGE_WAL_MAX_WRITE_DELAYstorage-wal-max-write-delay
influxd flag
  1. influxd --storage-wal-max-write-delay=10m
Environment variable
  1. export INFLUXD_STORAGE_WAL_MAX_WRITE_DELAY=10m
Configuration file

YAML TOML JSON

  1. storage-wal-max-write-delay: 10m
  1. storage-wal-max-write-delay = "10m"
  1. {
  2. "storage-wal-max-write-delay": "10m"
  3. }

storage-write-timeout

Maximum amount of time the storage engine will process a write request before timing out.

Default: 10s

influxd flagEnvironment variableConfiguration key
—storage-write-timeoutINFLUXD_STORAGE_WRITE_TIMEOUTstorage-write-timeout
influxd flag
  1. influxd --storage-write-timeout=10s
Environment variable
  1. export INFLUXD_STORAGE_WRITE_TIMEOUT=10s
Configuration file

YAML TOML JSON

  1. storage-write-timeout: 10s
  1. storage-write-timeout = "10s"
  1. {
  2. "storage-write-timeout": "10s"
  3. }

store

Specifies the data store for REST resources.

Options: disk, memory
Default: disk

For backwards compatibility, this flag also acceptss bolt as a value. When using disk, REST resources are stored on disk using the bolt-path and sqlite-path.

memory is meant for transient environments, such as testing environments, where data persistence does not matter. InfluxData does not recommend using memory in production.

influxd flagEnvironment variableConfiguration key
—storeINFLUXD_STOREstore
influxd flag
  1. influxd --store=bolt
Environment variable
  1. export INFLUXD_STORE=bolt
Configuration file

YAML TOML JSON

  1. store: bolt
  1. store = "bolt"
  1. {
  2. "store": "bolt"
  3. }

testing-always-allow-setup

Ensures the /api/v2/setup endpoint always returns true to allow onboarding. This configuration option is primary used in continuous integration tests.

Default: false

influxd flagEnvironment variableConfiguration key
—testing-always-allow-setupINFLUXD_TESTING_ALWAYS_ALLOW_SETUPtesting-always-allow-setup
influxd flag
  1. influxd --testing-always-allow-setup
Environment variable
  1. export INFLUXD_TESTING_ALWAYS_ALLOW_SETUP=true
Configuration file

YAML TOML JSON

  1. testing-always-allow-setup: true
  1. testing-always-allow-setup = true
  1. {
  2. "testing-always-allow-setup": true
  3. }

tls-cert

Path to TLS certificate file. Requires the tls-key to be set.

For more information, see Enable TLS encryption.

influxd flagEnvironment variableConfiguration key
—tls-certINFLUXD_TLS_CERTtls-cert
influxd flag
  1. influxd --tls-cert=/path/to/influxdb.crt
Environment variable
  1. export INFLUXD_TLS_CERT=/path/to/influxdb.crt
Configuration file

YAML TOML JSON

  1. tls-cert: /path/to/influxdb.crt
  1. tls-cert = "/path/to/influxdb.crt"
  1. {
  2. "tls-cert": "/path/to/influxdb.crt"
  3. }

tls-key

Path to TLS key file. Requires the tls-cert to be set.

For more information, see Enable TLS encryption.

influxd flagEnvironment variableConfiguration key
—tls-keyINFLUXD_TLS_KEYtls-key
influxd flag
  1. influxd --tls-key=/path/to/influxdb.key
Environment variable
  1. export INFLUXD_TLS_KEY=/path/to/influxdb.key
Configuration file

YAML TOML JSON

  1. tls-key: /path/to/influxdb.key
  1. tls-key = "/path/to/influxdb.key"
  1. {
  2. "tls-key": "/path/to/influxdb.key"
  3. }

tls-min-version

Minimum accepted TLS version.

Default: 1.2

influxd flagEnvironment variableConfiguration key
—tls-min-versionINFLUXD_TLS_MIN_VERSIONtls-min-version
influxd flag
  1. influxd --tls-min-version=1.2
Environment variable
  1. export INFLUXD_TLS_MIN_VERSION=1.2
Configuration file

YAML TOML JSON

  1. tls-min-version: "1.2"
  1. tls-min-version = "1.2"
  1. {
  2. "tls-min-version": "1.2"
  3. }

tls-strict-ciphers

Restrict accepted TLS ciphers to:

  • ECDHE_RSA_WITH_AES_256_GCM_SHA384
  • ECDHE_RSA_WITH_AES_256_CBC_SHA
  • RSA_WITH_AES_256_GCM_SHA384
  • RSA_WITH_AES_256_CBC_SHA

Default: false

influxd flagEnvironment variableConfiguration key
—tls-strict-ciphersINFLUXD_TLS_STRICT_CIPHERStls-strict-ciphers
influxd flag
  1. influxd --tls-strict-ciphers
Environment variable
  1. export INFLUXD_TLS_STRICT_CIPHERS=true
Configuration file

YAML TOML JSON

  1. tls-strict-ciphers: true
  1. tls-strict-ciphers = true
  1. {
  2. "tls-strict-ciphers": true
  3. }

tracing-type

Enable tracing in InfluxDB and specifies the tracing type. Tracing is disabled by default.

Options: log, jaeger

influxd flagEnvironment variableConfiguration key
—tracing-typeINFLUXD_TRACING_TYPEtracing-type
influxd flag
  1. influxd --tracing-type=log
Environment variable
  1. export INFLUXD_TRACING_TYPE=log
Configuration file

YAML TOML JSON

  1. tracing-type: log
  1. tracing-type = "log"
  1. {
  2. "tracing-type": "log"
  3. }

ui-disabled

Disable the InfluxDB user interface (UI). The UI is enabled by default.

Default: false

influxd flagEnvironment variableConfiguration key
—ui-disabledINFLUXD_UI_DISABLEDui-disabled
influxd flag
  1. influxd --ui-disabled
Environment variable
  1. export INFLUXD_UI_DISABLED=true
Configuration file

YAML TOML JSON

  1. ui-disabled: true
  1. ui-disabled = true
  1. {
  2. "ui-disabled": true
  3. }

vault-addr

Specifies the address of the Vault server expressed as a URL and port. For example: https://127.0.0.1:8200/.

influxd flagEnvironment variableConfiguration key
—vault-addrVAULT_ADDRvault-addr
influxd flag
  1. influxd --vault-addr=https://127.0.0.1:8200/
Environment variable
  1. export VAULT_ADDR=https://127.0.0.1:8200/
Configuration file

YAML TOML JSON

  1. vault-addr: https://127.0.0.1:8200/
  1. vault-addr = "https://127.0.0.1:8200/"
  1. {
  2. "vault-addr": "https://127.0.0.1:8200/"
  3. }

vault-cacert

Specifies the path to a PEM-encoded CA certificate file on the local disk. This file is used to verify the Vault server’s SSL certificate. This setting takes precedence over the --vault-capath setting.

influxd flagEnvironment variableConfiguration key
—vault-cacertVAULT_CACERTvault-cacert
influxd flag
  1. influxd --vault-cacert=/path/to/ca.pem
Environment variable
  1. export VAULT_CACERT=/path/to/ca.pem
Configuration file

YAML TOML JSON

  1. vault-cacert: /path/to/ca.pem
  1. vault-cacert = "/path/to/ca.pem"
  1. {
  2. "vault-cacert": "/path/to/ca.pem"
  3. }

vault-capath

Specifies the path to a directory of PEM-encoded CA certificate files on the local disk. These certificates are used to verify the Vault server’s SSL certificate.

influxd flagEnvironment variableConfiguration key
—vault-capathVAULT_CAPATHvault-capath
influxd flag
  1. influxd --vault-capath=/path/to/certs/
Environment variable
  1. export VAULT_CAPATH=/path/to/certs/
Configuration file

YAML TOML JSON

  1. vault-capath: /path/to/certs/
  1. vault-capath = "/path/to/certs/"
  1. {
  2. "vault-capath": "/path/to/certs/"
  3. }

vault-client-cert

Specifies the path to a PEM-encoded client certificate on the local disk. This file is used for TLS communication with the Vault server.

influxd flagEnvironment variableConfiguration key
—vault-client-certVAULT_CLIENT_CERTvault-client-cert
influxd flag
  1. influxd --vault-client-cert=/path/to/client_cert.pem
Environment variable
  1. export VAULT_CLIENT_CERT=/path/to/client_cert.pem
Configuration file

YAML TOML JSON

  1. vault-client-cert: /path/to/client_cert.pem
  1. vault-client-cert = "/path/to/client_cert.pem"
  1. {
  2. "vault-client-cert": "/path/to/client_cert.pem"
  3. }

vault-client-key

Specifies the path to an unencrypted, PEM-encoded private key on disk which corresponds to the matching client certificate.

influxd flagEnvironment variableConfiguration key
—vault-client-keyVAULT_CLIENT_KEYvault-client-key
influxd flag
  1. influxd --vault-client-key=/path/to/private_key.pem
Environment variable
  1. export VAULT_CLIENT_KEY=/path/to/private_key.pem
Configuration file

YAML TOML JSON

  1. vault-client-key: /path/to/private_key.pem
  1. vault-client-key = "/path/to/private_key.pem"
  1. {
  2. "vault-client-key": "/path/to/private_key.pem"
  3. }

vault-max-retries

Specifies the maximum number of retries when encountering a 5xx error code. The default is 2 (for three attempts in total). Set this to 0 or less to disable retrying.

Default: 2

influxd flagEnvironment variableConfiguration key
—vault-max-retriesVAULT_MAX_RETRIESvault-max-retries
influxd flag
  1. influxd --vault-max-retries=2
Environment variable
  1. export VAULT_MAX_RETRIES=2
Configuration file

YAML TOML JSON

  1. vault-max-retries: 2
  1. vault-max-retries = 2
  1. {
  2. "vault-max-retries": 2
  3. }

vault-client-timeout

Specifies the Vault client timeout.

Default: 60s

influxd flagEnvironment variableConfiguration key
—vault-client-timeoutVAULT_CLIENT_TIMEOUTvault-client-timeout
influxd flag
  1. influxd --vault-client-timeout=60s
Environment variable
  1. export VAULT_CLIENT_TIMEOUT=60s
Configuration file

YAML TOML JSON

  1. vault-client-timeout: 60s
  1. vault-client-timeout = "60s"
  1. {
  2. "vault-client-timeout": "60s"
  3. }

vault-skip-verify

Skip certificate verification when communicating with Vault. Setting this variable voids Vault’s security model and is not recommended.

Default: false

influxd flagEnvironment variableConfiguration key
—vault-skip-verifyVAULT_SKIP_VERIFYvault-skip-verify
influxd flag
  1. influxd --vault-skip-verify
Environment variable
  1. export VAULT_SKIP_VERIFY=true
Configuration file

YAML TOML JSON

  1. vault-skip-verify: true
  1. vault-skip-verify = true
  1. {
  2. "vault-skip-verify": true
  3. }

vault-tls-server-name

Specifies the name to use as the Server Name Indication (SNI) host when connecting via TLS.

influxd flagEnvironment variableConfiguration key
—vault-tls-server-nameVAULT_TLS_SERVER_NAMEvault-tls-server-name
influxd flag
  1. influxd --vault-tls-server-name=secure.example.com
Environment variable
  1. export VAULT_TLS_SERVER_NAME=secure.example.com
Configuration file

YAML TOML JSON

  1. vault-tls-server-name: secure.example.com
  1. vault-tls-server-name = "secure.example.com"
  1. {
  2. "vault-tls-server-name": "secure.example.com"
  3. }

vault-token

Specifies the Vault token use when authenticating with Vault.

influxd flagEnvironment variableConfiguration key
—vault-tokenVAULT_TOKENvault-token
influxd flag
  1. influxd --vault-token=exAmple-t0ken-958a-f490-c7fd0eda5e9e
Environment variable
  1. export VAULT_TOKEN=exAmple-t0ken-958a-f490-c7fd0eda5e9e
Configuration file

YAML TOML JSON

  1. vault-token: exAmple-t0ken-958a-f490-c7fd0eda5e9e
  1. vault-token = "exAmple-t0ken-958a-f490-c7fd0eda5e9e"
  1. {
  2. "vault-token": "exAmple-t0ken-958a-f490-c7fd0eda5e9e"
  3. }