For AI agents: the complete documentation index is at llms.txt. Every page is also available as markdown by appending .md to its URL, or by sending an Accept: text/markdown request header.

Logging & Metrics

These settings control log output format and timezone, the Prometheus metrics endpoint, and the sys.metrics table. Additional log configuration is available in log.conf.

For more information, see Logging and metrics.

Logging​

log.level.verbose​

  • Default: false
  • Reloadable: no

Converts short-hand log level indicators (E, C, I) into long-hand (ERROR, CRITICAL, INFO).

log.timestamp.timezone​

  • Default: Z (UTC)
  • Reloadable: no

Sets the timezone for log timestamps. Can be a timezone ID such as Antarctica/McMurdo, SystemDefault to use the system timezone, or the default UTC with Z suffix.

Metrics endpoint​

metrics.enabled​

  • Default: false
  • Reloadable: no

Enables the Prometheus /metrics endpoint on the minimal HTTP server. See the Prometheus integration guide.

Persisted metrics​

These keys control the sys.metrics table, see Persisted metrics.

metrics.persist.enabled​

  • Default: true
  • Reloadable: no

Samples metrics into sys.metrics. When set to false, the existing table is kept and can be dropped with DROP TABLE 'sys.metrics'.

Persistence also counts unhandled errors for http.pessimistic.health.check.enabled, even with metrics.enabled=false. With both keys set to false, the health check always returns HTTP 200.

metrics.persist.exclude​

  • Default: worker_pool_fiber_(max_live|mounted|retained|finalizing|outstanding|created|retired|mount|wake|launch|scheduler_publication|scheduler_selection|orphan_recovery|mount_budget_exhaustion)(__.*)?
  • Reloadable: no

Java regular expression that must match the whole column name. Matching metrics are not persisted. A custom value replaces the default. Set to an empty value to persist every metric.

metrics.persist.interval​

  • Default: 1s
  • Reloadable: no

How often a sample row is written.

metrics.persist.parquet.enabled​

  • Default: true
  • Reloadable: no

Converts completed day partitions of sys.metrics to Parquet.

metrics.persist.sync.interval​

  • Default: -1
  • Reloadable: no

How often sys.metrics commits are synced to disk when cairo.commit.mode is sync or async. -1 never syncs, 0 syncs every sample, and a duration such as 1m syncs at most that often.

metrics.persist.ttl​

  • Default: 1 WEEK
  • Reloadable: no

How long sys.metrics keeps data, using TTL syntax, for example 3 DAYS or 1 MONTH. Values in hours must be a multiple of 24. This also applies on QuestDB Enterprise, where system tables keep TTL instead of a storage policy.

metrics.persist.virtual.interval​

  • Default: 60s
  • Reloadable: no

How often the memory gauges, such as memory_rss, are refreshed. See Metric history in sys.metrics for the full list.