2026/11/09 15:22:40 INFO: metrics: disable exposing PSI metrics because of failed init: open /sys/fs/cgroup/cpu.pressure: no such file or directory
vmstorage stores time series data obtained from vminsert and returns the requested data to vmselect.
See the docs at https://docs.victoriametrics.com/victoriametrics/cluster-victoriametrics/ .
-bigMergeConcurrency int
Deprecated: this flag does nothing
-blockcache.missesBeforeCaching int
The number of cache misses before putting the block into cache. Higher values may reduce indexdb/dataBlocks cache size at the cost of higher CPU and disk read usage (default 2)
-cacheExpireDuration duration
Items are removed from in-memory caches after they aren't accessed for this duration. Lower values may reduce memory usage at the cost of higher CPU usage. See also -prevCacheRemovalPercent (default 30m0s)
-dedup.minScrapeInterval duration
Leave only the last sample in every time series per each discrete interval equal to -dedup.minScrapeInterval > 0. See also -streamAggr.dedupInterval and https://docs.victoriametrics.com/victoriametrics/single-server-victoriametrics/#deduplication
-denyQueriesOutsideRetention
Whether to deny queries outside the configured -retentionPeriod and -futureRetention. When set, then /api/v1/query_range will return an error for queries with 'from' value outside -retentionPeriod or 'to' value beyond -futureRetention. This may be useful when multiple data sources with distinct retentions are hidden behind query-tee
-denyQueryTracing
Whether to disable the ability to trace queries. See https://docs.victoriametrics.com/victoriametrics/single-server-victoriametrics/#query-tracing
-disablePerDayIndex
Disable per-day index and use global index for all searches. This may improve performance and decrease disk space usage for the use cases with fixed set of timeseries scattered across a big time range (for example, when loading years of historical data). See https://docs.victoriametrics.com/victoriametrics/single-server-victoriametrics/#index-tuning
-enableIngestionAPI
Whether to enable ingestion APIs on vmstorage HTTP listener. Currently enables Prometheus remote write v1 at /insert/<accountID>/prometheus and /insert/<accountID>/prometheus/api/v1/write
-enableMetadata
Whether to enable metadata processing for metrics scraped from targets, received via VictoriaMetrics remote write, Prometheus remote write v1 or OpenTelemetry protocol. See also remoteWrite.maxMetadataPerBlock (default true)
-enableTCP6
Whether to enable IPv6 for listening and dialing. By default, only IPv4 TCP and UDP are used
-envflag.enable
Whether to enable reading flags from environment variables in addition to the command line. Command line flag values have priority over values from environment vars. Flags are read only from the command line if this flag isn't set. See https://docs.victoriametrics.com/victoriametrics/single-server-victoriametrics/#environment-variables for more details
-envflag.prefix string
Prefix for environment variables if -envflag.enable is set
-filestream.disableFadvise
Whether to disable fadvise() syscall when reading large data files. The fadvise() syscall prevents from eviction of recently accessed data from OS page cache during background merges and backups. In some rare cases it is better to disable the syscall if it uses too much CPU
-finalMergeDelay duration
Deprecated: this flag does nothing
-flagsAuthKey value
Auth key for /flags endpoint. It must be passed via authKey query arg. It overrides -httpAuth.*
Flag value can be read from the given file when using -flagsAuthKey=file:///abs/path/to/file or -flagsAuthKey=file://./relative/path/to/file.
Flag value can be read from the given http/https url when using -flagsAuthKey=http://host/path or -flagsAuthKey=https://host/path
-forceFlushAuthKey value
authKey, which must be passed in query string to /internal/force_flush pages. It overrides -httpAuth.*
Flag value can be read from the given file when using -forceFlushAuthKey=file:///abs/path/to/file or -forceFlushAuthKey=file://./relative/path/to/file.
Flag value can be read from the given http/https url when using -forceFlushAuthKey=http://host/path or -forceFlushAuthKey=https://host/path
-forceMergeAuthKey value
authKey, which must be passed in query string to /internal/force_merge pages. It overrides -httpAuth.*
Flag value can be read from the given file when using -forceMergeAuthKey=file:///abs/path/to/file or -forceMergeAuthKey=file://./relative/path/to/file.
Flag value can be read from the given http/https url when using -forceMergeAuthKey=http://host/path or -forceMergeAuthKey=https://host/path
-fs.disableAdviseRandomRead
Whether to disable FADV_RANDOM and MADV_RANDOM hints for data part files. Typical queries with selectors access data part files at random offsets, so FADV_RANDOM is enforced to reduce excessive disk readahead.Use this flag if your query read pattern benefits from sequential read (e.g. query by metric name without selectors) to prefer FADV_NORMAL. (default true)
-fs.disableMincore
Whether to disable the mincore() syscall for checking mmap()ed files. By default, mincore() is used to detect whether mmap()ed file pages are resident in memory. Disabling mincore() may be needed on older ZFS filesystems (below 2.1.5), since it may trigger ZFS bug. See https://github.com/VictoriaMetrics/VictoriaMetrics/issues/10327 for details.
-fs.disableMmap
Whether to use pread() instead of mmap() for reading data files. By default, mmap() is used for 64-bit arches and pread() is used for 32-bit arches, since they cannot read data files bigger than 2^32 bytes in memory. mmap() is usually faster for reading small data chunks than pread()
-fs.maxConcurrency int
The maximum number of concurrent goroutines to work with files; smaller values may help reducing Go scheduling latency on systems with small number of CPU cores; higher values may help reducing data ingestion latency on systems with high-latency storage such as NFS or Ceph (default 256 = 16x CPU cores, capped at 256)
-futureRetention value
Data with timestamps bigger than now+futureRetention is automatically deleted. The minimum futureRetention is 2 days. See https://docs.victoriametrics.com/victoriametrics/single-server-victoriametrics/#retention
The following optional suffixes are supported: s (second), h (hour), d (day), w (week), M (month), y (year). If suffix isn't set, then the duration is counted in months (default 2d)
-healthcheck
Whether to check that the running process accepts connections at -httpListenAddr and exit. The exit code is non-zero if the check fails. This is useful for Docker HEALTHCHECK in images without curl or wget. Pass the same -httpListenAddr as the checked process has
-http.connTimeout duration
Incoming connections to -httpListenAddr are closed after the configured timeout. This may help evenly spreading load among a cluster of services behind TCP-level load balancer. Zero value disables closing of incoming connections (default 2m0s)
-http.disableCORS
Disable CORS for all origins (*)
-http.disableKeepAlive
Whether to disable HTTP keep-alive for incoming connections at -httpListenAddr
-http.disableResponseCompression
Disable compression of HTTP responses to save CPU resources. By default, compression is enabled to save network bandwidth
-http.header.csp string
Value for 'Content-Security-Policy' header, recommended: "default-src 'self'"
-http.header.disableServerHostname
Whether to disable 'X-Server-Hostname' header in HTTP responses
-http.header.frameOptions string
Value for 'X-Frame-Options' header
-http.header.hsts string
Value for 'Strict-Transport-Security' header, recommended: 'max-age=31536000; includeSubDomains'
-http.idleConnTimeout duration
Timeout for incoming idle http connections (default 1m0s)
-http.maxGracefulShutdownDuration duration
The maximum duration for a graceful shutdown of the HTTP server. During this period the server stops accepting new connections, but it will continue serving existing connections. The remaining in-flight requests are canceled before the deadline, so the shutdown can finish within this duration. A highly loaded server may require increased value for a graceful shutdown (default 7s)
-http.pathPrefix string
An optional prefix to add to all the paths handled by http server. For example, if '-http.pathPrefix=/foo/bar' is set, then all the http requests will be handled on '/foo/bar/*' paths. This may be useful for proxied requests. See https://www.robustperception.io/using-external-urls-and-proxies-with-prometheus
-http.shutdownDelay duration
Optional delay before http server shutdown. During this delay, the server returns non-OK responses from /health page, so load balancers can route new requests to other servers
-httpAuth.password value
Password for HTTP server's Basic Auth. The authentication is disabled if -httpAuth.username is empty
Flag value can be read from the given file when using -httpAuth.password=file:///abs/path/to/file or -httpAuth.password=file://./relative/path/to/file.
Flag value can be read from the given http/https url when using -httpAuth.password=http://host/path or -httpAuth.password=https://host/path
-httpAuth.username string
Username for HTTP server's Basic Auth. The authentication is disabled if empty. See also -httpAuth.password
-httpListenAddr array
Address to listen for incoming http requests. See also -httpListenAddr.useProxyProtocol. Use unix:/path/to/socket to listen on Unix domain socket. Note that -tls and -httpListenAddr.useProxyProtocol cannot be used with Unix sockets
Supports an array of values separated by comma or specified via multiple flags.
Each array item can contain comma inside single-quoted or double-quoted string, {}, [] and () braces.
-httpListenAddr.useProxyProtocol array
Whether to use proxy protocol for connections accepted at the given -httpListenAddr . See https://www.haproxy.org/download/1.8/doc/proxy-protocol.txt . With enabled proxy protocol http server cannot serve regular /metrics endpoint. Use -pushmetrics.url for metrics pushing
Supports array of values separated by comma or specified via multiple flags.
Empty values are set to false.
-inmemoryDataFlushInterval duration
The interval for guaranteed saving of in-memory data to disk. The saved data survives unclean shutdowns such as OOM crash, hardware reset, SIGKILL, etc. Bigger intervals may help increase the lifetime of flash storage with limited write cycles (e.g. Raspberry PI). Smaller intervals increase disk IO load. Minimum supported value is 1s (default 5s)
-insert.maxQueueDuration duration
The maximum duration to wait in the queue when -maxConcurrentInserts concurrent insert requests are executed (default 1m0s)
-internStringCacheExpireDuration duration
The expiry duration for caches for interned strings. See https://en.wikipedia.org/wiki/String_interning . See also -internStringMaxLen and -internStringDisableCache (default 6m0s)
-internStringDisableCache
Whether to disable caches for interned strings. This may reduce memory usage at the cost of higher CPU usage. See https://en.wikipedia.org/wiki/String_interning . See also -internStringCacheExpireDuration and -internStringMaxLen
-internStringMaxLen int
The maximum length for strings to intern. A lower limit may save memory at the cost of higher CPU usage. See https://en.wikipedia.org/wiki/String_interning . See also -internStringDisableCache and -internStringCacheExpireDuration (default 500)
-logNewSeries
Whether to log new series. This option is for debug purposes only. It can lead to performance issues when big number of new series are ingested into VictoriaMetrics
-logNewSeriesAuthKey value
authKey, which must be passed in query string to /internal/log_new_series. It overrides -httpAuth.*
Flag value can be read from the given file when using -logNewSeriesAuthKey=file:///abs/path/to/file or -logNewSeriesAuthKey=file://./relative/path/to/file.
Flag value can be read from the given http/https url when using -logNewSeriesAuthKey=http://host/path or -logNewSeriesAuthKey=https://host/path
-loggerDisableTimestamps
Whether to disable writing timestamps in logs
-loggerErrorsPerSecondLimit int
Per-second limit on the number of ERROR messages. If more than the given number of errors are emitted per second, the remaining errors are suppressed. Zero values disable the rate limit
-loggerFormat string
Format for logs. Possible values: default, json (default "default")
-loggerJSONFields string
Allows renaming fields in JSON formatted logs. Example: "ts:timestamp,msg:message" renames "ts" to "timestamp" and "msg" to "message". Supported fields: ts, level, caller, msg
-loggerLevel string
Minimum level of errors to log. Possible values: INFO, WARN, ERROR, FATAL, PANIC (default "INFO")
-loggerMaxArgLen int
The maximum length of a single logged argument. Longer arguments are replaced with 'arg_start..arg_end', where 'arg_start' and 'arg_end' is prefix and suffix of the arg with the length not exceeding -loggerMaxArgLen / 2 (default 5000)
-loggerOutput string
Output for the logs. Supported values: stderr, stdout (default "stderr")
-loggerTimezone string
Timezone to use for timestamps in logs. Timezone must be a valid IANA Time Zone. For example: America/New_York, Europe/Berlin, Etc/GMT+3 or Local (default "UTC")
-loggerWarnsPerSecondLimit int
Per-second limit on the number of WARN messages. If more than the given number of warns are emitted per second, then the remaining warns are suppressed. Zero values disable the rate limit
-maxBackfillAge value
The maximum allowed age for the ingested samples with historical timestamps. Samples with timestamps older than now-maxBackfillAge are rejected during data ingestion. By default, or when set to 0, -maxBackfillAge equals to -retentionPeriod, e.g. it is unlimited within the configured retention. This can be useful for limiting ingestion of historical samples, for example, when older data has been moved to another storage tier. See https://docs.victoriametrics.com/victoriametrics/single-server-victoriametrics/#retention
The following optional suffixes are supported: s (second), h (hour), d (day), w (week), M (month), y (year). If suffix isn't set, then the duration is counted in months (default 0)
-maxConcurrentInserts int
The maximum number of concurrent insert requests. Set higher value when clients send data over slow networks. Default value depends on the number of available CPU cores. It should work fine in most cases since it minimizes resource usage. See also -insert.maxQueueDuration (default 128 = 2x CPU cores)
-maxIngestionRate int
The maximum number of samples vmstorage can receive per second via ingestion APIs when -enableIngestionAPI is enabled. Data ingestion is paused when the limit is exceeded. By default there are no limits on samples ingestion rate.
-maxInsertRequestSize size
The maximum size in bytes of a single Prometheus remote_write API request
Supports the following optional suffixes for size values: KB, MB, GB, TB, KiB, MiB, GiB, TiB (default 33554432)
-maxLabelNameLen int
The maximum length of label name in the accepted time series at ingestion APIs when -enableIngestionAPI is enabled. Series with longer label name are ignored. In this case the vm_rows_ignored_total{reason="too_long_label_name"} metric at /metrics page is incremented. Value must be in range 1..65535. (default 256)
-maxLabelValueLen int
The maximum length of label values in the accepted time series at ingestion APIs when -enableIngestionAPI is enabled. Series with longer label value are ignored. In this case the vm_rows_ignored_total{reason="too_long_label_value"} metric at /metrics page is incremented. Value must be in range 1..65535. (default 4096)
-maxLabelsPerTimeseries int
The maximum number of labels per time series to be accepted at ingestion APIs when -enableIngestionAPI is enabled. Series with superfluous labels are ignored. In this case the vm_rows_ignored_total{reason="too_many_labels"} metric at /metrics page is incremented (default 40)
-memory.allowedBytes size
Allowed size of system memory VictoriaMetrics caches may occupy. This option overrides -memory.allowedPercent if set to a non-zero value. Too low a value may increase the cache miss rate usually resulting in higher CPU and disk IO usage. Too high a value may evict too much data from the OS page cache resulting in higher disk IO usage. The process may behave unexpectedly if this flag is set too small (e.g., 1 byte).
Supports the following optional suffixes for size values: KB, MB, GB, TB, KiB, MiB, GiB, TiB (default 0)
-memory.allowedPercent float
Allowed percent of system memory VictoriaMetrics caches may occupy. See also -memory.allowedBytes. Too low a value may increase cache miss rate usually resulting in higher CPU and disk IO usage. Too high a value may evict too much data from the OS page cache which will result in higher disk IO usage (default 60)
-metrics.exposeMetadata
Whether to expose TYPE and HELP metadata at the /metrics page, which is exposed at -httpListenAddr . The metadata may be needed when the /metrics page is consumed by systems, which require this information. For example, Managed Prometheus in Google Cloud - https://cloud.google.com/stackdriver/docs/managed-prometheus/troubleshooting#missing-metric-type
-metricsAuthKey value
Auth key for /metrics endpoint. It must be passed via authKey query arg. It overrides -httpAuth.*
Flag value can be read from the given file when using -metricsAuthKey=file:///abs/path/to/file or -metricsAuthKey=file://./relative/path/to/file.
Flag value can be read from the given http/https url when using -metricsAuthKey=http://host/path or -metricsAuthKey=https://host/path
-pprofAuthKey value
Auth key for /debug/pprof/* endpoints. It must be passed via authKey query arg. It overrides -httpAuth.*
Flag value can be read from the given file when using -pprofAuthKey=file:///abs/path/to/file or -pprofAuthKey=file://./relative/path/to/file.
Flag value can be read from the given http/https url when using -pprofAuthKey=http://host/path or -pprofAuthKey=https://host/path
-precisionBits int
The number of precision bits to store per each value. Lower precision bits improves data compression at the cost of precision loss (default 64)
-prevCacheRemovalPercent float
Items in the previous caches are removed when the percent of requests it serves becomes lower than this value. Higher values reduce memory usage at the cost of higher CPU usage. See also -cacheExpireDuration (default 0.1)
-pushmetrics.disableCompression
Whether to disable request body compression when pushing metrics to every -pushmetrics.url
-pushmetrics.extraLabel array
Optional labels to add to metrics pushed to every -pushmetrics.url . For example, -pushmetrics.extraLabel='instance="foo"' adds instance="foo" label to all the metrics pushed to every -pushmetrics.url
Supports an array of values separated by comma or specified via multiple flags.
Each array item can contain comma inside single-quoted or double-quoted string, {}, [] and () braces.
-pushmetrics.header array
Optional HTTP request header to send to every -pushmetrics.url . For example, -pushmetrics.header='Authorization: Basic foobar' adds 'Authorization: Basic foobar' header to every request to every -pushmetrics.url
Supports an array of values separated by comma or specified via multiple flags.
Each array item can contain comma inside single-quoted or double-quoted string, {}, [] and () braces.
-pushmetrics.interval duration
Interval for pushing metrics to every -pushmetrics.url (default 10s)
-pushmetrics.url array
Optional URL to push metrics exposed at /metrics page. See https://docs.victoriametrics.com/victoriametrics/single-server-victoriametrics/#push-metrics . By default, metrics exposed at /metrics page aren't pushed to any remote storage
Supports an array of values separated by comma or specified via multiple flags.
Each array item can contain comma inside single-quoted or double-quoted string, {}, [] and () braces.
-retentionPeriod value
Data with timestamps outside the retentionPeriod is automatically deleted. The minimum retentionPeriod is 24h or 1d. See https://docs.victoriametrics.com/victoriametrics/single-server-victoriametrics/#retention. See also -retentionFilter
The following optional suffixes are supported: s (second), h (hour), d (day), w (week), M (month), y (year). If suffix isn't set, then the duration is counted in months (default 1M)
-retentionTimezoneOffset duration
The offset for performing indexdb rotation. If set to 0, then the indexdb rotation is performed at 4am UTC time per each -retentionPeriod. If set to 2h, then the indexdb rotation is performed at 4am EET time (the timezone with +2h offset)
-rpc.disableCompression
Whether to disable compression of the data sent from vmstorage to vmselect. This reduces CPU usage at the cost of higher network bandwidth usage
-rpc.handshakeTimeout duration
Timeout for RPC handshake between vminsert/vmselect and vmstorage. Increase this value if transient handshake failures occur. See https://docs.victoriametrics.com/victoriametrics/troubleshooting/#cluster-instability section for more details. (default 5s)
-search.maxConcurrentRequests int
The maximum number of concurrent vmselect requests the vmstorage can process at -vmselectAddr. It shouldn't be high, since a single request usually saturates a CPU core, and many concurrently executed requests may require high amounts of memory. See also -search.maxQueueDuration (default 128 = 2*cgroup.AvailableCPUs())
-search.maxQueueDuration duration
The maximum time the incoming vmselect request waits for execution when -search.maxConcurrentRequests limit is reached (default 10s)
-search.maxTagKeys int
The maximum number of tag keys returned per search. See also -search.maxLabelsAPISeries and -search.maxLabelsAPIDuration (default 100000)
-search.maxTagValueSuffixesPerSearch int
The maximum number of tag value suffixes returned from /metrics/find (default 100000)
-search.maxTagValues int
The maximum number of tag values returned per search. See also -search.maxLabelsAPISeries and -search.maxLabelsAPIDuration (default 100000)
-search.maxUniqueTimeseries int
The maximum number of unique time series, which can be scanned during every query. This allows protecting against heavy queries, which select unexpectedly high number of series. When set to zero, the limit is automatically calculated based on -search.maxConcurrentRequests (inversely proportional) and memory available to the process (proportional). See also -search.max* command-line flags at vmselect
-secret.flags array
Comma-separated list of flag names with secret values. Values for these flags are hidden in logs and on /metrics page
Supports an array of values separated by comma or specified via multiple flags.
Each array item can contain comma inside single-quoted or double-quoted string, {}, [] and () braces.
-smallMergeConcurrency int
Deprecated: this flag does nothing
-snapshotAuthKey value
authKey, which must be passed in query string to /snapshot* pages. It overrides -httpAuth.*
Flag value can be read from the given file when using -snapshotAuthKey=file:///abs/path/to/file or -snapshotAuthKey=file://./relative/path/to/file.
Flag value can be read from the given http/https url when using -snapshotAuthKey=http://host/path or -snapshotAuthKey=https://host/path
-snapshotCreateTimeout duration
Deprecated: this flag does nothing
-snapshotsMaxAge value
Automatically delete snapshots older than -snapshotsMaxAge if it is set to non-zero duration. Make sure that backup process has enough time to finish the backup before the corresponding snapshot is automatically deleted
The following optional suffixes are supported: s (second), h (hour), d (day), w (week), M (month), y (year). If suffix isn't set, then the duration is counted in months (default 3d)
-sortLabels
Whether to sort labels for samples ingested via vmstorage ingestion APIs when -enableIngestionAPI is enabled. This may be needed for reducing memory usage at storage when the order of labels in incoming samples is random. For example, if m{k1="v1",k2="v2"} may be sent as m{k2="v2",k1="v1"}. Enabled sorting for labels can slow down ingestion performance a bit
-storage.cacheSizeIndexDBDataBlocks size
Overrides max size for indexdb/dataBlocks cache. See https://docs.victoriametrics.com/victoriametrics/single-server-victoriametrics/#cache-tuning
Supports the following optional suffixes for size values: KB, MB, GB, TB, KiB, MiB, GiB, TiB (default 0)
-storage.cacheSizeIndexDBDataBlocksSparse size
Overrides max size for indexdb/dataBlocksSparse cache. See https://docs.victoriametrics.com/victoriametrics/single-server-victoriametrics/#cache-tuning
Supports the following optional suffixes for size values: KB, MB, GB, TB, KiB, MiB, GiB, TiB (default 0)
-storage.cacheSizeIndexDBIndexBlocks size
Overrides max size for indexdb/indexBlocks cache. See https://docs.victoriametrics.com/victoriametrics/single-server-victoriametrics/#cache-tuning
Supports the following optional suffixes for size values: KB, MB, GB, TB, KiB, MiB, GiB, TiB (default 0)
-storage.cacheSizeIndexDBTagFilters size
Overrides max size for indexdb/tagFiltersToMetricIDs cache. See https://docs.victoriametrics.com/victoriametrics/single-server-victoriametrics/#cache-tuning
Supports the following optional suffixes for size values: KB, MB, GB, TB, KiB, MiB, GiB, TiB (default 0)
-storage.cacheSizeMetricNamesStats size
Overrides max size for storage/metricNamesStatsTracker cache. See https://docs.victoriametrics.com/victoriametrics/single-server-victoriametrics/#cache-tuning
Supports the following optional suffixes for size values: KB, MB, GB, TB, KiB, MiB, GiB, TiB (default 0)
-storage.cacheSizeStorageMetricName size
Overrides max size for storage/metricName cache. See https://docs.victoriametrics.com/victoriametrics/single-server-victoriametrics/#cache-tuning
Supports the following optional suffixes for size values: KB, MB, GB, TB, KiB, MiB, GiB, TiB (default 0)
-storage.cacheSizeStorageTSID size
Overrides max size for storage/tsid cache. See https://docs.victoriametrics.com/victoriametrics/single-server-victoriametrics/#cache-tuning
Supports the following optional suffixes for size values: KB, MB, GB, TB, KiB, MiB, GiB, TiB (default 0)
-storage.finalDedupScheduleCheckInterval duration
The interval for checking when final deduplication process should be started.Storage unconditionally adds 25% jitter to the interval value on each check evaluation. Changing the interval to the bigger values may delay downsampling, deduplication for historical data. See also https://docs.victoriametrics.com/victoriametrics/single-server-victoriametrics/#deduplication (default 1h0m0s)
-storage.idbPrefillStart duration
Specifies how early VictoriaMetrics starts pre-filling indexDB records before indexDB rotation. Starting the pre-fill process earlier can help reduce resource usage spikes during rotation. In most cases, this value should not be changed. The maximum allowed value is 23h. (default 1h0m0s)
-storage.maxDailySeries int
The maximum number of unique series can be added to the storage during the last 24 hours. Excess series are logged and dropped. This can be useful for limiting series churn rate. See https://docs.victoriametrics.com/victoriametrics/single-server-victoriametrics/#cardinality-limiter . Setting this flag to '-1' sets limit to maximum possible value (2147483647) which is useful in order to enable series tracking without enforcing limits. See also -storage.maxHourlySeries
-storage.maxHourlySeries int
The maximum number of unique series can be added to the storage during the last hour. Excess series are logged and dropped. This can be useful for limiting series cardinality. See https://docs.victoriametrics.com/victoriametrics/single-server-victoriametrics/#cardinality-limiter . Setting this flag to '-1' sets limit to maximum possible value (2147483647) which is useful in order to enable series tracking without enforcing limits. See also -storage.maxDailySeries
-storage.maxMetadataStorageSize size
Overrides max size for metrics metadata entries in-memory storage. If set to 0 or a negative value, defaults to 1% of allowed memory.
Supports the following optional suffixes for size values: KB, MB, GB, TB, KiB, MiB, GiB, TiB (default 0)
-storage.minFreeDiskSpaceBytes size
The minimum free disk space at -storageDataPath after which the storage stops accepting new data
Supports the following optional suffixes for size values: KB, MB, GB, TB, KiB, MiB, GiB, TiB (default 100000000)
-storage.trackMetricNamesStats
Whether to track ingest and query requests for timeseries metric names. This feature allows to track metric names unused at query requests. See https://docs.victoriametrics.com/victoriametrics/single-server-victoriametrics/#track-ingested-metrics-usage (default true)
-storage.vminsertConnsShutdownDuration duration
The time needed for gradual closing of vminsert connections during graceful shutdown. Bigger duration reduces spikes in CPU, RAM and disk IO load on the remaining vmstorage nodes during rolling restart. Smaller duration reduces the time needed to close all the vminsert connections, thus reducing the time for graceful shutdown. Configured value must always be lower than the graceful shutdown period configured by the orchestration platform (terminationGracePeriodSeconds for Kubernetes). See https://docs.victoriametrics.com/victoriametrics/cluster-victoriametrics/#improving-re-routing-performance-during-restart (default 10s)
-storageDataPath string
Path to storage data (default "vmstorage-data")
-tls array
Whether to enable TLS for incoming HTTP requests at the given -httpListenAddr (aka https). -tlsCertFile and -tlsKeyFile must be set if -tls is set. See also -mtls
Supports array of values separated by comma or specified via multiple flags.
Empty values are set to false.
-tlsCertFile array
Path to file with TLS certificate for the corresponding -httpListenAddr if -tls is set. Prefer ECDSA certs instead of RSA certs as RSA certs are slower. The provided certificate file is automatically re-read every second, so it can be dynamically updated. See also -tlsAutocertHosts
Supports an array of values separated by comma or specified via multiple flags.
Each array item can contain comma inside single-quoted or double-quoted string, {}, [] and () braces.
-tlsCipherSuites array
Optional list of TLS cipher suites for incoming requests over HTTPS if -tls is set. See the list of supported cipher suites at https://pkg.go.dev/crypto/tls#pkg-constants
Supports an array of values separated by comma or specified via multiple flags.
Each array item can contain comma inside single-quoted or double-quoted string, {}, [] and () braces.
-tlsKeyFile array
Path to file with TLS key for the corresponding -httpListenAddr if -tls is set. The provided key file is automatically re-read every second, so it can be dynamically updated. See also -tlsAutocertHosts
Supports an array of values separated by comma or specified via multiple flags.
Each array item can contain comma inside single-quoted or double-quoted string, {}, [] and () braces.
-tlsMinVersion array
Optional minimum TLS version to use for the corresponding -httpListenAddr if -tls is set. Supported values: TLS10, TLS11, TLS12, TLS13
Supports an array of values separated by comma or specified via multiple flags.
Each array item can contain comma inside single-quoted or double-quoted string, {}, [] and () braces.
-version
Show VictoriaMetrics version
-vminsertAddr string
TCP address to accept connections from vminsert services (default ":8400")
-vmselectAddr string
TCP address to accept connections from vmselect services (default ":8401")
Options (114)
| Option | Description | Source |
|---|---|---|
-bigMergeConcurrency int | Deprecated: this flag does nothing | help |
-blockcache.missesBeforeCaching int | The number of cache misses before putting the block into cache. | help |
-cacheExpireDuration duration | Items are removed from in-memory caches after they aren't accessed for this duration. | help |
-dedup.minScrapeInterval duration | Leave only the last sample in every time series per each discrete interval equal to -dedup.minScrapeInterval > 0. | help |
-denyQueriesOutsideRetention | Whether to deny queries outside the configured -retentionPeriod and -futureRetention. | help |
-denyQueryTracing | Whether to disable the ability to trace queries. | help |
-disablePerDayIndex | Disable per-day index and use global index for all searches. | help |
-enableIngestionAPI | Whether to enable ingestion APIs on vmstorage HTTP listener. | help |
-enableMetadata | Whether to enable metadata processing for metrics scraped from targets, received via VictoriaMetrics remote write, Prometheus remote write v1 or OpenTelemetry protocol. | help |
-enableTCP6 | Whether to enable IPv6 for listening and dialing. | help |
-envflag.enable | Whether to enable reading flags from environment variables in addition to the command line. | help |
-envflag.prefix string | Prefix for environment variables if -envflag.enable is set | help |
-filestream.disableFadvise | Whether to disable fadvise() syscall when reading large data files. | help |
-finalMergeDelay duration | Deprecated: this flag does nothing | help |
-flagsAuthKey value | Auth key for /flags endpoint. | help |
-forceFlushAuthKey value | authKey, which must be passed in query string to /internal/force_flush pages. | help |
-forceMergeAuthKey value | authKey, which must be passed in query string to /internal/force_merge pages. | help |
-fs.disableAdviseRandomRead | Whether to disable FADV_RANDOM and MADV_RANDOM hints for data part files. | help |
-fs.disableMincore | Whether to disable the mincore() syscall for checking mmap()ed files. | help |
-fs.disableMmap | Whether to use pread() instead of mmap() for reading data files. | help |
-fs.maxConcurrency int | The maximum number of concurrent goroutines to work with files; | help |
-futureRetention value | Data with timestamps bigger than now+futureRetention is automatically deleted. | help |
-healthcheck | Whether to check that the running process accepts connections at -httpListenAddr and exit. | help |
-http.connTimeout duration | Incoming connections to -httpListenAddr are closed after the configured timeout. | help |
-http.disableCORS | Disable CORS for all origins (*) | help |
-http.disableKeepAlive | Whether to disable HTTP keep-alive for incoming connections at -httpListenAddr | help |
-http.disableResponseCompression | Disable compression of HTTP responses to save CPU resources. | help |
-http.header.csp string | Value for 'Content-Security-Policy' header, recommended: "default-src 'self'" | help |
-http.header.disableServerHostname | Whether to disable 'X-Server-Hostname' header in HTTP responses | help |
-http.header.frameOptions string | Value for 'X-Frame-Options' header | help |
-http.header.hsts string | Value for 'Strict-Transport-Security' header, recommended: 'max-age=31536000; | help |
-http.idleConnTimeout duration | Timeout for incoming idle http connections (default 1m0s) | help |
-http.maxGracefulShutdownDuration duration | The maximum duration for a graceful shutdown of the HTTP server. | help |
-http.pathPrefix string | An optional prefix to add to all the paths handled by http server. | help |
-http.shutdownDelay duration | Optional delay before http server shutdown. | help |
-httpAuth.password value | Password for HTTP server's Basic Auth. | help |
-httpAuth.username string | Username for HTTP server's Basic Auth. | help |
-httpListenAddr array | Address to listen for incoming http requests. | help |
-httpListenAddr.useProxyProtocol array | Whether to use proxy protocol for connections accepted at the given -httpListenAddr . | help |
-inmemoryDataFlushInterval duration | The interval for guaranteed saving of in-memory data to disk. | help |
-insert.maxQueueDuration duration | The maximum duration to wait in the queue when -maxConcurrentInserts concurrent insert requests are executed (default 1m0s) | help |
-internStringCacheExpireDuration duration | The expiry duration for caches for interned strings. | help |
-internStringDisableCache | Whether to disable caches for interned strings. | help |
-internStringMaxLen int | The maximum length for strings to intern. | help |
-logNewSeries | Whether to log new series. | help |
-logNewSeriesAuthKey value | authKey, which must be passed in query string to /internal/log_new_series. | help |
-loggerDisableTimestamps | Whether to disable writing timestamps in logs | help |
-loggerErrorsPerSecondLimit int | Per-second limit on the number of ERROR messages. | help |
-loggerFormat string | Format for logs. | help |
-loggerJSONFields string | Allows renaming fields in JSON formatted logs. | help |
-loggerLevel string | Minimum level of errors to log. | help |
-loggerMaxArgLen int | The maximum length of a single logged argument. | help |
-loggerOutput string | Output for the logs. | help |
-loggerTimezone string | Timezone to use for timestamps in logs. | help |
-loggerWarnsPerSecondLimit int | Per-second limit on the number of WARN messages. | help |
-maxBackfillAge value | The maximum allowed age for the ingested samples with historical timestamps. | help |
-maxConcurrentInserts int | The maximum number of concurrent insert requests. | help |
-maxIngestionRate int | The maximum number of samples vmstorage can receive per second via ingestion APIs when -enableIngestionAPI is enabled. | help |
-maxInsertRequestSize size | The maximum size in bytes of a single Prometheus remote_write API request Supports the following optional suffixes for size values: KB, MB, GB, TB, KiB, MiB, GiB, TiB (default 33554432) | help |
-maxLabelNameLen int | The maximum length of label name in the accepted time series at ingestion APIs when -enableIngestionAPI is enabled. | help |
-maxLabelValueLen int | The maximum length of label values in the accepted time series at ingestion APIs when -enableIngestionAPI is enabled. | help |
-maxLabelsPerTimeseries int | The maximum number of labels per time series to be accepted at ingestion APIs when -enableIngestionAPI is enabled. | help |
-memory.allowedBytes size | Allowed size of system memory VictoriaMetrics caches may occupy. | help |
-memory.allowedPercent float | Allowed percent of system memory VictoriaMetrics caches may occupy. | help |
-metrics.exposeMetadata | Whether to expose TYPE and HELP metadata at the /metrics page, which is exposed at -httpListenAddr . | help |
-metricsAuthKey value | Auth key for /metrics endpoint. | help |
-pprofAuthKey value | Auth key for /debug/pprof/* endpoints. | help |
-precisionBits int | The number of precision bits to store per each value. | help |
-prevCacheRemovalPercent float | Items in the previous caches are removed when the percent of requests it serves becomes lower than this value. | help |
-pushmetrics.disableCompression | Whether to disable request body compression when pushing metrics to every -pushmetrics.url | help |
-pushmetrics.extraLabel array | Optional labels to add to metrics pushed to every -pushmetrics.url . | help |
-pushmetrics.header array | Optional HTTP request header to send to every -pushmetrics.url . | help |
-pushmetrics.interval duration | Interval for pushing metrics to every -pushmetrics.url (default 10s) | help |
-pushmetrics.url array | Optional URL to push metrics exposed at /metrics page. | help |
-retentionPeriod value | Data with timestamps outside the retentionPeriod is automatically deleted. | help |
-retentionTimezoneOffset duration | The offset for performing indexdb rotation. | help |
-rpc.disableCompression | Whether to disable compression of the data sent from vmstorage to vmselect. | help |
-rpc.handshakeTimeout duration | Timeout for RPC handshake between vminsert/vmselect and vmstorage. | help |
-search.maxConcurrentRequests int | The maximum number of concurrent vmselect requests the vmstorage can process at -vmselectAddr. | help |
-search.maxQueueDuration duration | The maximum time the incoming vmselect request waits for execution when -search.maxConcurrentRequests limit is reached (default 10s) | help |
-search.maxTagKeys int | The maximum number of tag keys returned per search. | help |
-search.maxTagValueSuffixesPerSearch int | The maximum number of tag value suffixes returned from /metrics/find (default 100000) | help |
-search.maxTagValues int | The maximum number of tag values returned per search. | help |
-search.maxUniqueTimeseries int | The maximum number of unique time series, which can be scanned during every query. | help |
-secret.flags array | Comma-separated list of flag names with secret values. | help |
-smallMergeConcurrency int | Deprecated: this flag does nothing | help |
-snapshotAuthKey value | authKey, which must be passed in query string to /snapshot* pages. | help |
-snapshotCreateTimeout duration | Deprecated: this flag does nothing | help |
-snapshotsMaxAge value | Automatically delete snapshots older than -snapshotsMaxAge if it is set to non-zero duration. | help |
-sortLabels | Whether to sort labels for samples ingested via vmstorage ingestion APIs when -enableIngestionAPI is enabled. | help |
-storage.cacheSizeIndexDBDataBlocks size | Overrides max size for indexdb/dataBlocks cache. | help |
-storage.cacheSizeIndexDBDataBlocksSparse size | Overrides max size for indexdb/dataBlocksSparse cache. | help |
-storage.cacheSizeIndexDBIndexBlocks size | Overrides max size for indexdb/indexBlocks cache. | help |
-storage.cacheSizeIndexDBTagFilters size | Overrides max size for indexdb/tagFiltersToMetricIDs cache. | help |
-storage.cacheSizeMetricNamesStats size | Overrides max size for storage/metricNamesStatsTracker cache. | help |
-storage.cacheSizeStorageMetricName size | Overrides max size for storage/metricName cache. | help |
-storage.cacheSizeStorageTSID size | Overrides max size for storage/tsid cache. | help |
-storage.finalDedupScheduleCheckInterval duration | The interval for checking when final deduplication process should be started.Storage unconditionally adds 25% jitter to the interval value on each check evaluation. | help |
-storage.idbPrefillStart duration | Specifies how early VictoriaMetrics starts pre-filling indexDB records before indexDB rotation. | help |
-storage.maxDailySeries int | The maximum number of unique series can be added to the storage during the last 24 hours. | help |
-storage.maxHourlySeries int | The maximum number of unique series can be added to the storage during the last hour. | help |
-storage.maxMetadataStorageSize size | Overrides max size for metrics metadata entries in-memory storage. | help |
-storage.minFreeDiskSpaceBytes size | The minimum free disk space at -storageDataPath after which the storage stops accepting new data Supports the following optional suffixes for size values: KB, MB, GB, TB, KiB, MiB, GiB, TiB (default… | help |
-storage.trackMetricNamesStats | Whether to track ingest and query requests for timeseries metric names. | help |
-storage.vminsertConnsShutdownDuration duration | The time needed for gradual closing of vminsert connections during graceful shutdown. | help |
-storageDataPath string | Path to storage data (default "vmstorage-data") | help |
-tls array | Whether to enable TLS for incoming HTTP requests at the given -httpListenAddr (aka https). | help |
-tlsCertFile array | Path to file with TLS certificate for the corresponding -httpListenAddr if -tls is set. | help |
-tlsCipherSuites array | Optional list of TLS cipher suites for incoming requests over HTTPS if -tls is set. | help |
-tlsKeyFile array | Path to file with TLS key for the corresponding -httpListenAddr if -tls is set. | help |
-tlsMinVersion array | Optional minimum TLS version to use for the corresponding -httpListenAddr if -tls is set. | help |
-version | Show VictoriaMetrics version | help |
-vminsertAddr string | TCP address to accept connections from vminsert services (default ":8400") | help |
-vmselectAddr string | TCP address to accept connections from vmselect services (default ":8401") | help |