InfluxDB configuration options
This page documents an earlier version of InfluxDB OSS. InfluxDB 3 Core is the latest stable version.
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
- Configuration precedence
- InfluxDB configuration file
- Configuration options
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.
influx server-configView your server configuration with the API
Use the /api/v2/config InfluxDB API endpoint to retrieve your runtime server configuration.
GET http://localhost:8086/api/v2/config
Configuration precedence
InfluxDB honors configuration settings using the following precedence:
influxdflags- Environment variables
- 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.
export INFLUXD_CONFIG_PATH=/path/to/custom/config/directoryOn startup, influxd will check for a config.* in the INFLUXD_CONFIG_PATH directory.
Example configuration file
query-concurrency: 20
query-queue-size: 15
secret-store: vault
session-length: 120
tls-cert: /path/to/influxdb.crt
tls-key: /path/to/influxdb.keyquery-concurrency = 20
query-queue-size = 15
secret-store = "vault"
session-length = 120
tls-cert = "/path/to/influxdb.crt"
tls-key = "/path/to/influxdb.key"{
"query-concurrency": 20,
"query-queue-size": 15,
"secret-store": "vault",
"session-length": 120,
"tls-cert": "/path/to/influxdb.crt",
"tls-key": "/path/to/influxdb.key"
}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
- bolt-path
- e2e-testing
- engine-path
- feature-flags
- flux-log-enabled
- hardening-enabled
- http-bind-address
- http-idle-timeout
- http-read-header-timeout
- http-read-timeout
- http-write-timeout
- influxql-max-select-buckets
- influxql-max-select-point
- influxql-max-select-series
- instance-id
- log-level
- metrics-disabled
- nats-max-payload-bytes - (deprecated)
- nats-port - (deprecated)
- no-tasks
- overwrite-pid-file
- pid-file
- pprof-disabled
- query-concurrency
- query-initial-memory-bytes
- query-max-memory-bytes
- query-memory-bytes
- query-queue-size
- reporting-disabled
- secret-store
- session-length
- session-renew-disabled
- sqlite-path
- storage-cache-max-memory-size
- storage-cache-snapshot-memory-size
- storage-cache-snapshot-write-cold-duration
- storage-compact-full-write-cold-duration
- storage-compact-throughput-burst
- storage-max-concurrent-compactions
- storage-max-index-log-file-size
- storage-no-validate-field-size
- storage-retention-check-interval
- storage-series-file-max-concurrent-snapshot-compactions
- storage-series-id-set-cache-size
- storage-shard-precreator-advance-period
- storage-shard-precreator-check-interval
- storage-tsm-use-madv-willneed
- storage-validate-keys
- storage-wal-fsync-delay
- storage-wal-max-concurrent-writes
- storage-wal-max-write-delay
- storage-write-timeout
- store
- strong-passwords
- testing-always-allow-setup
- tls-cert
- tls-key
- tls-min-version
- tls-strict-ciphers
- tracing-type
- ui-disabled
- vault-addr
- vault-cacert
- vault-capath
- vault-client-cert
- vault-client-key
- vault-client-timeout
- vault-max-retries
- vault-skip-verify
- vault-tls-server-name
- vault-token
assets-path
Override the default InfluxDB user interface (UI) assets by serving assets from the specified directory. Typically, InfluxData internal use only.
| influxd flag | Environment variable | Configuration key |
|---|---|---|
--assets-path | INFLUXD_ASSETS_PATH | assets-path |
influxd flag
influxd --assets-path=/path/to/custom/assets-dirEnvironment variable
export INFLUXD_ASSETS_PATH=/path/to/custom/assets-dirConfiguration file
assets-path: /path/to/custom/assets-dirassets-path = "/path/to/custom/assets-dir"{
"assets-path": "/path/to/custom/assets-dir"
}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 flag | Environment variable | Configuration key |
|---|---|---|
--bolt-path | INFLUXD_BOLT_PATH | bolt-path |
influxd flag
influxd --bolt-path=~/.influxdbv2/influxd.boltEnvironment variable
export INFLUXD_BOLT_PATH=~/.influxdbv2/influxd.boltConfiguration file
bolt-path: ~/.influxdbv2/influxd.boltbolt-path = "~/.influxdbv2/influxd.bolt"{
"bolt-path": "~/.influxdbv2/influxd.bolt"
}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 flag | Environment variable | Configuration key |
|---|---|---|
--e2e-testing | INFLUXD_E2E_TESTING | e2e-testing |
influxd flag
influxd --e2e-testingEnvironment variable
export INFLUXD_E2E_TESTING=trueConfiguration file
engine-path
Path to persistent storage engine files where InfluxDB stores all Time-Structure Merge Tree (TSM) data on disk.
Default: ~/.influxdbv2/engine
| influxd flag | Environment variable | Configuration key |
|---|---|---|
--engine-path | INFLUXD_ENGINE_PATH | engine-path |
influxd flag
influxd --engine-path=~/.influxdbv2/engineEnvironment variable
export INFLUXD_ENGINE_PATH=~/.influxdbv2/engineConfiguration file
engine-path: ~/.influxdbv2/engineengine-path = "~/.influxdbv2/engine"{
"engine-path": "~/.influxdbv2/engine"
}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 flag | Environment variable | Configuration key |
|---|---|---|
--feature-flags | INFLUXD_FEATURE_FLAGS | feature-flags |
influxd flag
influxd --feature-flags flag1=value2,flag2=value2Environment variable
export INFLUXD_FEATURE_FLAGS="{\"flag1\":\value1\",\"flag2\":\"value2\"}"Configuration file
feature-flags:
flag1: "value1"
flag2: "value2"[feature-flags]
flag1 = "value1"
glag2 = "value2"{
"feature-flags": {
"flag1": "value1",
"flag2": "value2"
}
}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 flag | Environment variable | Configuration key |
|---|---|---|
--flux-log-enabled | INFLUXD_FLUX_LOG_ENABLED | flux-log-enabled |
influxd flag
influxd --flux-log-enabledEnvironment variable
export INFLUXD_FLUX_LOG_ENABLED=trueConfiguration file
hardening-enabled
Enable additional security features
in InfluxDB.
Default: false
| influxd flag | Environment variable | Configuration key |
|---|---|---|
--hardening-enabled | INFLUXD_HARDENING_ENABLED | hardening-enabled |
influxd flag
influxd --hardening-enabledEnvironment variable
export INFLUXD_HARDENING_ENABLED=trueConfiguration file
http-bind-address
Bind address for the InfluxDB HTTP API. Customize the URL and port for the InfluxDB API and UI.
Default: :8086
| influxd flag | Environment variable | Configuration key |
|---|---|---|
--http-bind-address | INFLUXD_HTTP_BIND_ADDRESS | http-bind-address |
influxd flag
influxd --http-bind-address=:8086Environment variable
export INFLUXD_HTTP_BIND_ADDRESS=:8086Configuration file
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 flag | Environment variable | Configuration key |
|---|---|---|
--http-idle-timeout | INFLUXD_HTTP_IDLE_TIMEOUT | http-idle-timeout |
influxd flag
influxd --http-idle-timeout=3m0sEnvironment variable
export INFLUXD_HTTP_IDLE_TIMEOUT=3m0sConfiguration file
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 flag | Environment variable | Configuration key |
|---|---|---|
--http-read-header-timeout | INFLUXD_HTTP_READ_HEADER_TIMEOUT | http-read-header-timeout |
influxd flag
influxd --http-read-header-timeout=10sEnvironment variable
export INFLUXD_HTTP_READ_HEADER_TIMEOUT=10sConfiguration file
http-read-header-timeout: 10shttp-read-header-timeout = "10s"{
"http-read-header-timeout": "10s"
}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 flag | Environment variable | Configuration key |
|---|---|---|
--http-read-timeout | INFLUXD_HTTP_READ_TIMEOUT | http-read-timeout |
influxd flag
influxd --http-read-timeout=10sEnvironment variable
export INFLUXD_HTTP_READ_TIMEOUT=10sConfiguration file
http-write-timeout
Maximum duration to wait before timing out writes of the response. It doesn’t let Handlers decide the duration on a per-request basis.
The timeout is reset when a new request’s header is read.
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 flag | Environment variable | Configuration key |
|---|---|---|
--http-write-timeout | INFLUXD_HTTP_WRITE_TIMEOUT | http-write-timeout |
influxd flag
influxd --http-write-timeout=10sEnvironment variable
export INFLUXD_HTTP_WRITE_TIMEOUT=10sConfiguration file
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 flag | Environment variable | Configuration key |
|---|---|---|
--influxql-max-select-buckets | INFLUXD_INFLUXQL_MAX_SELECT_BUCKETS | influxql-max-select-buckets |
influxd flag
influxd --influxql-max-select-buckets=0Environment variable
export INFLUXD_INFLUXQL_MAX_SELECT_BUCKETS=0Configuration file
influxql-max-select-buckets: 0influxql-max-select-buckets = 0{
"influxql-max-select-buckets": 0
}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 flag | Environment variable | Configuration key |
|---|---|---|
--influxql-max-select-point | INFLUXD_INFLUXQL_MAX_SELECT_POINT | influxql-max-select-point |
influxd flag
influxd --influxql-max-select-point=0Environment variable
export INFLUXD_INFLUXQL_MAX_SELECT_POINT=0Configuration file
influxql-max-select-point: 0influxql-max-select-point = 0{
"influxql-max-select-point": 0
}influxql-max-select-series
Maximum number of series a SELECT statement can return.
0 allows an unlimited number of series.
Default: 0
| influxd flag | Environment variable | Configuration key |
|---|---|---|
--influxql-max-select-series | INFLUXD_INFLUXQL_MAX_SELECT_SERIES | influxql-max-select-series |
influxd flag
influxd --influxql-max-select-series=0Environment variable
export INFLUXD_INFLUXQL_MAX_SELECT_SERIES=0Configuration file
influxql-max-select-series: 0influxql-max-select-series = 0{
"influxql-max-select-series": 0
}instance-id
Identifies edge nodes during replication, and prevents collisions if two edge nodes write the same measurement,tagset.
| influxd flag | Environment variable | Configuration key |
|---|---|---|
--instance-id | INFLUXD_INSTANCE_ID | instance-id |
influxd flag
influxd --instance-id=:8086Environment variable
export INFLUXD_INSTANCE_ID=:8086Configuration file
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 flag | Environment variable | Configuration key |
|---|---|---|
--log-level | INFLUXD_LOG_LEVEL | log-level |
influxd flag
influxd --log-level=infoEnvironment variable
export INFLUXD_LOG_LEVEL=infoConfiguration file
metrics-disabled
Disable the HTTP /metrics endpoint which exposes internal InfluxDB metrics.
Default: false
| influxd flag | Environment variable | Configuration key |
|---|---|---|
--metrics-disabled | INFLUXD_METRICS_DISABLED | metrics-disabled |
influxd flag
influxd --metrics-disabledEnvironment variable
export INFLUXD_METRICS_DISABLED=trueConfiguration file
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 flag | Environment variable | Configuration key |
|---|---|---|
--nats-max-payload-bytes | INFLUXD_NATS_MAX_PAYLOAD_BYTES | nats-max-payload-bytes |
influxd flag
influxd --nats-max-payload-bytes=1048576Environment variable
export INFLUXD_NATS_MAX_PAYLOAD_BYTES=1048576Configuration file
nats-max-payload-bytes: 1048576nats-max-payload-bytes = 1048576{
"nats-max-payload-bytes": 1048576
}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 flag | Environment variable | Configuration key |
|---|---|---|
--nats-port | INFLUXD_NATS_PORT | nats-port |
influxd flag
influxd --nats-port=-1Environment variable
export INFLUXD_NATS_PORT=-1Configuration file
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 flag | Environment variable | Configuration key |
|---|---|---|
--no-tasks | INFLUXD_NO_TASKS | no-tasks |
influxd flag
influxd --no-tasksEnvironment variable
export INFLUXD_NO_TASKS=trueConfiguration file
overwrite-pid-file
Overwrite the PID file specified by pid-file if it exists, instead of exiting with an error.
Default: false
| influxd flag | Environment variable | Configuration key |
|---|---|---|
--overwrite-pid-file | INFLUXD_OVERWRITE_PID_FILE | overwrite-pid-file |
influxd flag
influxd --overwrite-pid-fileEnvironment variable
export INFLUXD_OVERWRITE_PID_FILE=trueConfiguration file
pid-file
Write the PID file to the specified path and remove it when InfluxDB stops.
Default: ``
| influxd flag | Environment variable | Configuration key |
|---|---|---|
--pid-file | INFLUXD_PID_FILE | pid-file |
influxd flag
influxd --pid-file /path/to/pid-fileEnvironment variable
export INFLUXD_PID_FILE=/path/to/pid-fileConfiguration file
pid-file: /path/to/pid-filepid-file = "/path/to/pid-file"{
"pid-file": "/path/to/pid-file"
}pprof-disabled
Disable the /debug/pprof HTTP endpoint.
This endpoint provides runtime profiling data and can be helpful when debugging.
Default: false
| influxd flag | Environment variable | Configuration key |
|---|---|---|
--pprof-disabled | INFLUXD_PPROF_DISABLED | pprof-disabled |
influxd flag
influxd --pprof-disabledEnvironment variable
export INFLUXD_PPROF_DISABLED=trueConfiguration file
query-concurrency
Number of queries allowed to execute concurrently.
Setting to 0 allows an unlimited number of concurrent queries.
Default: 0
| influxd flag | Environment variable | Configuration key |
|---|---|---|
--query-concurrency | INFLUXD_QUERY_CONCURRENCY | query-concurrency |
influxd flag
influxd --query-concurrency=10Environment variable
export INFLUXD_QUERY_CONCURRENCY=10Configuration file
query-initial-memory-bytes
Initial bytes of memory allocated for a query.
Default: equal to query-memory-bytes
| influxd flag | Environment variable | Configuration key |
|---|---|---|
--query-initial-memory-bytes | INFLUXD_QUERY_INITIAL_MEMORY_BYTES | query-initial-memory-bytes |
influxd flag
influxd --query-initial-memory-bytes=10485760Environment variable
export INFLUXD_QUERY_INITIAL_MEMORY_BYTES=10485760Configuration file
query-initial-memory-bytes: 10485760query-initial-memory-bytes = 10485760{
"query-initial-memory-bytes": 10485760
}query-max-memory-bytes
Maximum total bytes of memory allowed for queries.
Default: equal to query-concurrency Ă— query-memory-bytes
| influxd flag | Environment variable | Configuration key |
|---|---|---|
--query-max-memory-bytes | INFLUXD_QUERY_MAX_MEMORY_BYTES | query-max-memory-bytes |
influxd flag
influxd --query-max-memory-bytes=104857600Environment variable
export INFLUXD_QUERY_MAX_MEMORY_BYTES=104857600Configuration file
query-max-memory-bytes: 104857600query-max-memory-bytes = 104857600{
"query-max-memory-bytes": 104857600
}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 flag | Environment variable | Configuration key |
|---|---|---|
--query-memory-bytes | INFLUXD_QUERY_MEMORY_BYTES | query-memory-bytes |
influxd flag
influxd --query-memory-bytes=10485760Environment variable
export INFLUXD_QUERY_MEMORY_BYTES=10485760Configuration file
query-memory-bytes: 10485760query-memory-bytes = 10485760{
"query-memory-bytes": 10485760
}query-queue-size
Maximum number of queries allowed in execution queue.
When queue limit is reached, new queries are rejected.
Setting to 0 allows an unlimited number of queries in the queue.
Default: 0
| influxd flag | Environment variable | Configuration key |
|---|---|---|
--query-queue-size | INFLUXD_QUERY_QUEUE_SIZE | query-queue-size |
influxd flag
influxd --query-queue-size=10Environment variable
export INFLUXD_QUERY_QUEUE_SIZE=10Configuration file
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 flag | Environment variable | Configuration key |
|---|---|---|
--reporting-disabled | INFLUXD_REPORTING_DISABLED | reporting-disabled |
influxd flag
influxd --reporting-disabledEnvironment variable
export INFLUXD_REPORTING_DISABLED=trueConfiguration file
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 flag | Environment variable | Configuration key |
|---|---|---|
--secret-store | INFLUXD_SECRET_STORE | secret-store |
influxd flag
influxd --secret-store=boltEnvironment variable
export INFLUXD_SECRET_STORE=boltConfiguration file
session-length
Specifies the Time to Live (TTL) in minutes for newly created user sessions.
Default: 60
| influxd flag | Environment variable | Configuration key |
|---|---|---|
--session-length | INFLUXD_SESSION_LENGTH | session-length |
influxd flag
influxd --session-length=60Environment variable
export INFLUXD_SESSION_LENGTH=60Configuration file
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 flag | Environment variable | Configuration key |
|---|---|---|
--session-renew-disabled | INFLUXD_SESSION_RENEW_DISABLED | session-renew-disabled |
influxd flag
influxd --session-renew-disabledEnvironment variable
export INFLUXD_SESSION_RENEW_DISABLED=trueConfiguration file
session-renew-disabled: truesession-renew-disabled = true{
"session-renew-disabled": true
}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 flag | Environment variable | Configuration key |
|---|---|---|
--sqlite-path | INFLUXD_SQLITE_PATH | sqlite-path |
influxd flag
influxd --sqlite-path ~/.influxdbv2/influxd.sqliteEnvironment variable
export INFLUXD_SQLITE_PATH=~/.influxdbv2/influxd.sqliteConfiguration file
sqlite-path: ~/.influxdbv2/influxd.sqlitesqlite-path = "~/.influxdbv2/influxd.sqlite"{
"sqlite-path": "~/.influxdbv2/influxd.sqlite"
}storage-cache-max-memory-size
Maximum size (in bytes) a shard’s cache can reach before it starts rejecting writes.
Default: 1073741824
| influxd flag | Environment variable | Configuration key |
|---|---|---|
--storage-cache-max-memory-size | INFLUXD_STORAGE_CACHE_MAX_MEMORY_SIZE | storage-cache-max-memory-size |
influxd flag
influxd --storage-cache-max-memory-size=1073741824Environment variable
export INFLUXD_STORAGE_CACHE_MAX_MEMORY_SIZE=1073741824Configuration file
storage-cache-max-memory-size: 1073741824storage-cache-max-memory-size = 1073741824{
"storage-cache-max-memory-size": 1073741824
}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 flag | Environment variable | Configuration key |
|---|---|---|
--storage-cache-snapshot-memory-size | INFLUXD_STORAGE_CACHE_SNAPSHOT_MEMORY_SIZE | storage-cache-snapshot-memory-size |
influxd flag
influxd --storage-cache-snapshot-memory-size=26214400Environment variable
export INFLUXD_STORAGE_CACHE_SNAPSHOT_MEMORY_SIZE=26214400Configuration file
storage-cache-snapshot-memory-size: 26214400storage-cache-snapshot-memory-size = 26214400{
"storage-cache-snapshot-memory-size": 26214400
}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 flag | Environment variable | Configuration key |
|---|---|---|
--storage-cache-snapshot-write-cold-duration | INFLUXD_STORAGE_CACHE_SNAPSHOT_WRITE_COLD_DURATION | storage-cache-snapshot-write-cold-duration |
influxd flag
influxd --storage-cache-snapshot-write-cold-duration=10m0sEnvironment variable
export INFLUXD_STORAGE_CACHE_SNAPSHOT_WRITE_COLD_DURATION=10m0sConfiguration file
storage-cache-snapshot-write-cold-duration: 10m0sstorage-cache-snapshot-write-cold-duration = "10m0s"{
"storage-cache-snapshot-write-cold-duration": "10m0s"
}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 flag | Environment variable | Configuration key |
|---|---|---|
--storage-compact-full-write-cold-duration | INFLUXD_STORAGE_COMPACT_FULL_WRITE_COLD_DURATION | storage-compact-full-write-cold-duration |
influxd flag
influxd --storage-compact-full-write-cold-duration=4h0m0sEnvironment variable
export INFLUXD_STORAGE_COMPACT_FULL_WRITE_COLD_DURATION=4h0m0sConfiguration file
storage-compact-full-write-cold-duration: 4h0m0sstorage-compact-full-write-cold-duration = "4h0m0s"{
"storage-compact-full-write-cold-duration": "4h0m0s"
}storage-compact-throughput-burst
Rate limit (in bytes per second) that TSM compactions can write to disk.
Default: 50331648
| influxd flag | Environment variable | Configuration key |
|---|---|---|
--storage-compact-throughput-burst | INFLUXD_STORAGE_COMPACT_THROUGHPUT_BURST | storage-compact-throughput-burst |
influxd flag
influxd --storage-compact-throughput-burst=50331648Environment variable
export INFLUXD_STORAGE_COMPACT_THROUGHPUT_BURST=50331648Configuration file
storage-compact-throughput-burst: 50331648storage-compact-throughput-burst = 50331648{
"storage-compact-throughput-burst": 50331648
}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 flag | Environment variable | Configuration key |
|---|---|---|
--storage-max-concurrent-compactions | INFLUXD_STORAGE_MAX_CONCURRENT_COMPACTIONS | storage-max-concurrent-compactions |
influxd flag
influxd --storage-max-concurrent-compactions=0Environment variable
export INFLUXD_STORAGE_MAX_CONCURRENT_COMPACTIONS=0Configuration file
storage-max-concurrent-compactions: 0storage-max-concurrent-compactions = 0{
"storage-max-concurrent-compactions": 0
}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 flag | Environment variable | Configuration key |
|---|---|---|
--storage-max-index-log-file-size | INFLUXD_STORAGE_MAX_INDEX_LOG_FILE_SIZE | storage-max-index-log-file-size |
influxd flag
influxd --storage-max-index-log-file-size=1048576Environment variable
export INFLUXD_STORAGE_MAX_INDEX_LOG_FILE_SIZE=1048576Configuration file
storage-max-index-log-file-size: 1048576storage-max-index-log-file-size = 1048576{
"storage-max-index-log-file-size": 1048576
}storage-no-validate-field-size
Skip field size validation on incoming write requests.
Default: false
| influxd flag | Environment variable | Configuration key |
|---|---|---|
--storage-no-validate-field-size | INFLUXD_STORAGE_NO_VALIDATE_FIELD_SIZE | storage-no-validate-field-size |
influxd flag
influxd --storage-no-validate-field-sizeEnvironment variable
export INFLUXD_STORAGE_NO_VALIDATE_FIELD_SIZE=trueConfiguration file
storage-no-validate-field-size: truestorage-no-validate-field-size = true{
"storage-no-validate-field-size": true
}storage-retention-check-interval
Interval of retention policy enforcement checks.
Default: 30m0s
| influxd flag | Environment variable | Configuration key |
|---|---|---|
--storage-retention-check-interval | INFLUXD_STORAGE_RETENTION_CHECK_INTERVAL | storage-retention-check-interval |
influxd flag
influxd --storage-retention-check-interval=30m0sEnvironment variable
export INFLUXD_STORAGE_RETENTION_CHECK_INTERVAL=30m0sConfiguration file
storage-retention-check-interval: 30m0sstorage-retention-check-interval = "30m0s"{
"storage-retention-check-interval": "30m0s"
}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 flag | Environment variable | Configuration key |
|---|---|---|
--storage-series-file-max-concurrent-snapshot-compactions | INFLUXD_STORAGE_SERIES_FILE_MAX_CONCURRENT_SNAPSHOT_COMPACTIONS | storage-series-file-max-concurrent-snapshot-compactions |
influxd flag
influxd --storage-series-file-max-concurrent-snapshot-compactions=0Environment variable
export INFLUXD_STORAGE_SERIES_FILE_MAX_CONCURRENT_SNAPSHOT_COMPACTIONS=0Configuration file
storage-series-file-max-concurrent-snapshot-compactions: 0storage-series-file-max-concurrent-snapshot-compactions = 0{
"storage-series-file-max-concurrent-snapshot-compactions": 0
}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 flag | Environment variable | Configuration key |
|---|---|---|
--storage-series-id-set-cache-size | INFLUXD_STORAGE_SERIES_ID_SET_CACHE_SIZE | storage-series-id-set-cache-size |
influxd flag
influxd --storage-series-id-set-cache-size=100Environment variable
export INFLUXD_STORAGE_SERIES_ID_SET_CACHE_SIZE=100Configuration file
storage-series-id-set-cache-size: 100storage-series-id-set-cache-size = 100{
"storage-series-id-set-cache-size": 100
}storage-shard-precreator-advance-period
The time before a shard group’s end-time that the successor shard group is created.
Default: 30m0s
| influxd flag | Environment variable | Configuration key |
|---|---|---|
--storage-shard-precreator-advance-period | INFLUXD_STORAGE_SHARD_PRECREATOR_ADVANCE_PERIOD | storage-shard-precreator-advance-period |
influxd flag
influxd --storage-shard-precreator-advance-period=30m0sEnvironment variable
export INFLUXD_STORAGE_SHARD_PRECREATOR_ADVANCE_PERIOD=30m0sConfiguration file
storage-shard-precreator-advance-period: 30m0sstorage-shard-precreator-advance-period = "30m0s"{
"storage-shard-precreator-advance-period": "30m0s"
}storage-shard-precreator-check-interval
Interval of pre-create new shards check.
Default: 10m0s
| influxd flag | Environment variable | Configuration key |
|---|---|---|
--storage-shard-precreator-check-interval | INFLUXD_STORAGE_SHARD_PRECREATOR_CHECK_INTERVAL | storage-shard-precreator-check-interval |
influxd flag
influxd --storage-shard-precreator-check-interval=10m0sEnvironment variable
export INFLUXD_STORAGE_SHARD_PRECREATOR_CHECK_INTERVAL=10m0sConfiguration file
storage-shard-precreator-check-interval: 10m0sstorage-shard-precreator-check-interval = "10m0s"{
"storage-shard-precreator-check-interval": "10m0s"
}storage-tsm-use-madv-willneed
Inform the kernel that InfluxDB intends to page in mmap’d sections of TSM files.
Default: false
| influxd flag | Environment variable | Configuration key |
|---|---|---|
--storage-tsm-use-madv-willneed | INFLUXD_STORAGE_TSM_USE_MADV_WILLNEED | storage-tsm-use-madv-willneed |
influxd flag
influxd --storage-tsm-use-madv-willneedEnvironment variable
export INFLUXD_STORAGE_TSM_USE_MADV_WILLNEED=trueConfiguration file
storage-tsm-use-madv-willneed: truestorage-tsm-use-madv-willneed = true{
"storage-tsm-use-madv-willneed": true
}storage-validate-keys
Validate incoming writes to ensure keys have only valid unicode characters.
Default: false
| influxd flag | Environment variable | Configuration key |
|---|---|---|
--storage-validate-keys | INFLUXD_STORAGE_VALIDATE_KEYS | storage-validate-keys |
influxd flag
influxd --storage-validate-keysEnvironment variable
export INFLUXD_STORAGE_VALIDATE_KEYS=trueConfiguration file
storage-validate-keys: truestorage-validate-keys = true{
"storage-validate-keys": true
}storage-wal-flush-on-shutdown
Flush the WAL on shutdown.
Default: false
| influxd flag | Environment variable | Configuration key |
|---|---|---|
--storage-wal-flush-on-shutdown | INFLUXD_STORAGE_WAL_FLUSH_ON_SHUTDOWN | storage-wal-flush-on-shutdown |
If set, influxd flushes or snapshots all WALs prior to completing shutdown–influxd performs cache snapshots on shutdown, which
results in the WAL files being written to TSM files and then deleted.
This is useful in upgrade and downgrade scenarios to prevent WAL format compatibility issues.
influxd flag
influxd --storage-wal-flush-on-shutdownEnvironment variable
export INFLUXD_STORAGE_WAL_FLUSH_ON_SHUTDOWN=trueConfiguration file
storage-wal-flush-on-shutdown: truestorage-wal-flush-on-shutdown = true{
"storage-wal-flush-on-shutdown": true
}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 flag | Environment variable | Configuration key |
|---|---|---|
--storage-wal-fsync-delay | INFLUXD_STORAGE_WAL_FSYNC_DELAY | storage-wal-fsync-delay |
influxd flag
influxd --storage-wal-fsync-delay=0sEnvironment variable
export INFLUXD_STORAGE_WAL_FSYNC_DELAY=0sConfiguration file
storage-wal-fsync-delay: 0sstorage-wal-fsync-delay = "0s"{
"storage-wal-fsync-delay": "0s"
}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 flag | Environment variable | Configuration key |
|---|---|---|
--storage-wal-max-concurrent-writes | INFLUXD_STORAGE_WAL_MAX_CONCURRENT_WRITES | storage-wal-max-concurrent-writes |
influxd flag
influxd --storage-wal-max-concurrent-writes=0Environment variable
export INFLUXD_STORAGE_WAL_MAX_CONCURRENT_WRITES=0Configuration file
storage-wal-max-concurrent-writes: 0storage-wal-max-concurrent-writes = 0{
"storage-wal-max-concurrent-writes": 0
}storage-wal-max-write-delay
Maximum amount of time a write request to the WAL directory will wait when the
maximum number of concurrent active writes to the WAL directory
has been met. Set to 0 to disable the timeout.
Default: 10m
| influxd flag | Environment variable | Configuration key |
|---|---|---|
--storage-wal-max-write-delay | INFLUXD_STORAGE_WAL_MAX_WRITE_DELAY | storage-wal-max-write-delay |
influxd flag
influxd --storage-wal-max-write-delay=10mEnvironment variable
export INFLUXD_STORAGE_WAL_MAX_WRITE_DELAY=10mConfiguration file
storage-wal-max-write-delay: 10mstorage-wal-max-write-delay = "10m"{
"storage-wal-max-write-delay": "10m"
}storage-write-timeout
Maximum amount of time the storage engine will process a write request before timing out.
Default: 10s
| influxd flag | Environment variable | Configuration key |
|---|---|---|
--storage-write-timeout | INFLUXD_STORAGE_WRITE_TIMEOUT | storage-write-timeout |
influxd flag
influxd --storage-write-timeout=10sEnvironment variable
export INFLUXD_STORAGE_WRITE_TIMEOUT=10sConfiguration file
storage-write-timeout: 10sstorage-write-timeout = "10s"{
"storage-write-timeout": "10s"
}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 flag | Environment variable | Configuration key |
|---|---|---|
--store | INFLUXD_STORE | store |
influxd flag
influxd --store=boltEnvironment variable
export INFLUXD_STORE=boltConfiguration file
strong-passwords
Require passwords to have at least eight characters and include characters from at least three of the following four character classes:
- uppercase (
A-Z) - lowercase (
a-z) - numbers (
0-9) - special characters (
!@#$%^&*()_+)
| influxd flag | Environment variable | Configuration key |
|---|---|---|
--strong-passwords | INFLUXD_STRONG_PASSWORDS | strong-passwords |
influxd flag
influxd --strong-passwordsEnvironment variable
export INFLUXD_STRONG_PASSWORDS=trueConfiguration file
testing-always-allow-setup
Ensures the /api/v2/setup endpoint always returns true to allow onboarding.
This configuration option is primarily used in continuous integration tests.
Default: false
| influxd flag | Environment variable | Configuration key |
|---|---|---|
--testing-always-allow-setup | INFLUXD_TESTING_ALWAYS_ALLOW_SETUP | testing-always-allow-setup |
influxd flag
influxd --testing-always-allow-setupEnvironment variable
export INFLUXD_TESTING_ALWAYS_ALLOW_SETUP=trueConfiguration file
testing-always-allow-setup: truetesting-always-allow-setup = true{
"testing-always-allow-setup": true
}tls-cert
Path to TLS certificate file.
Requires the tls-key to be set.
For more information, see Enable TLS encryption.
| influxd flag | Environment variable | Configuration key |
|---|---|---|
--tls-cert | INFLUXD_TLS_CERT | tls-cert |
influxd flag
influxd --tls-cert=/path/to/influxdb.crtEnvironment variable
export INFLUXD_TLS_CERT=/path/to/influxdb.crtConfiguration file
tls-cert: /path/to/influxdb.crttls-cert = "/path/to/influxdb.crt"{
"tls-cert": "/path/to/influxdb.crt"
}tls-key
Path to TLS key file.
Requires the tls-cert to be set.
For more information, see Enable TLS encryption.
| influxd flag | Environment variable | Configuration key |
|---|---|---|
--tls-key | INFLUXD_TLS_KEY | tls-key |
influxd flag
influxd --tls-key=/path/to/influxdb.keyEnvironment variable
export INFLUXD_TLS_KEY=/path/to/influxdb.keyConfiguration file
tls-key: /path/to/influxdb.keytls-key = "/path/to/influxdb.key"{
"tls-key": "/path/to/influxdb.key"
}tls-min-version
Minimum accepted TLS version.
Default: 1.2
| influxd flag | Environment variable | Configuration key |
|---|---|---|
--tls-min-version | INFLUXD_TLS_MIN_VERSION | tls-min-version |
influxd flag
influxd --tls-min-version=1.2Environment variable
export INFLUXD_TLS_MIN_VERSION=1.2Configuration file
tls-strict-ciphers
Restrict accepted TLS ciphers to:
- ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
- ECDHE_RSA_WITH_AES_128_GCM_SHA256
- ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
- ECDHE_RSA_WITH_AES_256_GCM_SHA384
- ECDHE_ECDSA_WITH_CHACHA20_POLY1305
- ECDHE_RSA_WITH_CHACHA20_POLY1305
Default: false
| influxd flag | Environment variable | Configuration key |
|---|---|---|
--tls-strict-ciphers | INFLUXD_TLS_STRICT_CIPHERS | tls-strict-ciphers |
influxd flag
influxd --tls-strict-ciphersEnvironment variable
export INFLUXD_TLS_STRICT_CIPHERS=trueConfiguration file
tracing-type
Enable tracing in InfluxDB and specifies the tracing type. Tracing is disabled by default.
Options: log, jaeger
| influxd flag | Environment variable | Configuration key |
|---|---|---|
--tracing-type | INFLUXD_TRACING_TYPE | tracing-type |
influxd flag
influxd --tracing-type=logEnvironment variable
export INFLUXD_TRACING_TYPE=logConfiguration file
ui-disabled
Disable the InfluxDB user interface (UI). The UI is enabled by default.
Default: false
| influxd flag | Environment variable | Configuration key |
|---|---|---|
--ui-disabled | INFLUXD_UI_DISABLED | ui-disabled |
influxd flag
influxd --ui-disabledEnvironment variable
export INFLUXD_UI_DISABLED=trueConfiguration file
vault-addr
Specifies the address of the Vault server expressed as a URL and port.
For example: https://127.0.0.1:8200/.
| influxd flag | Environment variable | Configuration key |
|---|---|---|
--vault-addr | VAULT_ADDR | vault-addr |
influxd flag
influxd --vault-addr=https://127.0.0.1:8200/Environment variable
export VAULT_ADDR=https://127.0.0.1:8200/Configuration file
vault-addr: https://127.0.0.1:8200/vault-addr = "https://127.0.0.1:8200/"{
"vault-addr": "https://127.0.0.1:8200/"
}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 flag | Environment variable | Configuration key |
|---|---|---|
--vault-cacert | VAULT_CACERT | vault-cacert |
influxd flag
influxd --vault-cacert=/path/to/ca.pemEnvironment variable
export VAULT_CACERT=/path/to/ca.pemConfiguration file
vault-cacert: /path/to/ca.pemvault-cacert = "/path/to/ca.pem"{
"vault-cacert": "/path/to/ca.pem"
}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 flag | Environment variable | Configuration key |
|---|---|---|
--vault-capath | VAULT_CAPATH | vault-capath |
influxd flag
influxd --vault-capath=/path/to/certs/Environment variable
export VAULT_CAPATH=/path/to/certs/Configuration file
vault-capath: /path/to/certs/vault-capath = "/path/to/certs/"{
"vault-capath": "/path/to/certs/"
}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 flag | Environment variable | Configuration key |
|---|---|---|
--vault-client-cert | VAULT_CLIENT_CERT | vault-client-cert |
influxd flag
influxd --vault-client-cert=/path/to/client_cert.pemEnvironment variable
export VAULT_CLIENT_CERT=/path/to/client_cert.pemConfiguration file
vault-client-cert: /path/to/client_cert.pemvault-client-cert = "/path/to/client_cert.pem"{
"vault-client-cert": "/path/to/client_cert.pem"
}vault-client-key
Specifies the path to an unencrypted, PEM-encoded private key on disk which corresponds to the matching client certificate.
| influxd flag | Environment variable | Configuration key |
|---|---|---|
--vault-client-key | VAULT_CLIENT_KEY | vault-client-key |
influxd flag
influxd --vault-client-key=/path/to/private_key.pemEnvironment variable
export VAULT_CLIENT_KEY=/path/to/private_key.pemConfiguration file
vault-client-key: /path/to/private_key.pemvault-client-key = "/path/to/private_key.pem"{
"vault-client-key": "/path/to/private_key.pem"
}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 flag | Environment variable | Configuration key |
|---|---|---|
--vault-max-retries | VAULT_MAX_RETRIES | vault-max-retries |
influxd flag
influxd --vault-max-retries=2Environment variable
export VAULT_MAX_RETRIES=2Configuration file
vault-client-timeout
Specifies the Vault client timeout.
Default: 60s
| influxd flag | Environment variable | Configuration key |
|---|---|---|
--vault-client-timeout | VAULT_CLIENT_TIMEOUT | vault-client-timeout |
influxd flag
influxd --vault-client-timeout=60sEnvironment variable
export VAULT_CLIENT_TIMEOUT=60sConfiguration file
vault-client-timeout: 60svault-client-timeout = "60s"{
"vault-client-timeout": "60s"
}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 flag | Environment variable | Configuration key |
|---|---|---|
--vault-skip-verify | VAULT_SKIP_VERIFY | vault-skip-verify |
influxd flag
influxd --vault-skip-verifyEnvironment variable
export VAULT_SKIP_VERIFY=trueConfiguration file
vault-tls-server-name
Specifies the name to use as the Server Name Indication (SNI) host when connecting via TLS.
| influxd flag | Environment variable | Configuration key |
|---|---|---|
--vault-tls-server-name | VAULT_TLS_SERVER_NAME | vault-tls-server-name |
influxd flag
influxd --vault-tls-server-name=secure.example.comEnvironment variable
export VAULT_TLS_SERVER_NAME=secure.example.comConfiguration file
vault-tls-server-name: secure.example.comvault-tls-server-name = "secure.example.com"{
"vault-tls-server-name": "secure.example.com"
}vault-token
Specifies the Vault token use when authenticating with Vault.
| influxd flag | Environment variable | Configuration key |
|---|---|---|
--vault-token | VAULT_TOKEN | vault-token |
influxd flag
influxd --vault-token=exAmple-t0ken-958a-f490-c7fd0eda5e9eEnvironment variable
export VAULT_TOKEN=exAmple-t0ken-958a-f490-c7fd0eda5e9eConfiguration file
vault-token: exAmple-t0ken-958a-f490-c7fd0eda5e9evault-token = "exAmple-t0ken-958a-f490-c7fd0eda5e9e"{
"vault-token": "exAmple-t0ken-958a-f490-c7fd0eda5e9e"
}Was this page helpful?
Thank you for your feedback!
Support and feedback
Thank you for being part of our community! We welcome and encourage your feedback and bug reports for InfluxDB and this documentation. To find support, use the following resources:
Customers with an annual or support contract can contact InfluxData Support.