loki cache_config

The cache block configures the cache backend. The supported CLI flags <prefix> used to reference this configuration block are:

  • frontend

  • frontend.index-stats-results-cache

  • store.chunks-cache

  • store.index-cache-read

  • store.index-cache-write

    (deprecated: use embedded-cache instead) Enable in-memory cache (auto-enabled

    for the chunks & query results cache if no other cache is configured).

    CLI flag: -<prefix>.cache.enable-fifocache

    [enable_fifocache: <boolean> | default = false]

    The default validity of entries for caches unless overridden.

    CLI flag: -<prefix>.default-validity

    [default_validity: <duration> | default = 1h]

    background:
    # At what concurrency to write back to cache.
    # CLI flag: -<prefix>.background.write-back-concurrency
    [writeback_goroutines: <int> | default = 10]

    # How many key batches to buffer for background write-back.
    # CLI flag: -<prefix>.background.write-back-buffer
    [writeback_buffer: <int> | default = 10000]
    
    # Size limit in bytes for background write-back.
    # CLI flag: -<prefix>.background.write-back-size-limit
    [writeback_size_limit: <int> | default = 1GB]
    

    memcached:
    # How long keys stay in the memcache.
    # CLI flag: -<prefix>.memcached.expiration
    [expiration: <duration> | default = 0s]

    # How many keys to fetch in each batch.
    # CLI flag: -<prefix>.memcached.batchsize
    [batch_size: <int> | default = 1024]
    
    # Maximum active requests to memcache.
    # CLI flag: -<prefix>.memcached.parallelism
    [parallelism: <int> | default = 100]
    

    memcached_client:
    # Hostname for memcached service to use. If empty and if addresses is unset,
    # no memcached will be used.
    # CLI flag: -<prefix>.memcached.hostname
    [host: <string> | default = ""]

    # SRV service used to discover memcache servers.
    # CLI flag: -<prefix>.memcached.service
    [service: <string> | default = "memcached"]
    
    # EXPERIMENTAL: Comma separated addresses list in DNS Service Discovery
    # format:
    # https://cortexmetrics.io/docs/configuration/arguments/#dns-service-discovery
    # CLI flag: -<prefix>.memcached.addresses
    [addresses: <string> | default = ""]
    
    # Maximum time to wait before giving up on memcached requests.
    # CLI flag: -<prefix>.memcached.timeout
    [timeout: <duration> | default = 100ms]
    
    # Maximum number of idle connections in pool.
    # CLI flag: -<prefix>.memcached.max-idle-conns
    [max_idle_conns: <int> | default = 16]
    
    # The maximum size of an item stored in memcached. Bigger items are not
    # stored. If set to 0, no maximum size is enforced.
    # CLI flag: -<prefix>.memcached.max-item-size
    [max_item_size: <int> | default = 0]
    
    # Period with which to poll DNS for memcache servers.
    # CLI flag: -<prefix>.memcached.update-interval
    [update_interval: <duration> | default = 1m]
    
    # Use consistent hashing to distribute to memcache servers.
    # CLI flag: -<prefix>.memcached.consistent-hash
    [consistent_hash: <boolean> | default = true]
    
    # Trip circuit-breaker after this number of consecutive dial failures (if zero
    # then circuit-breaker is disabled).
    # CLI flag: -<prefix>.memcached.circuit-breaker-consecutive-failures
    [circuit_breaker_consecutive_failures: <int> | default = 10]
    
    # Duration circuit-breaker remains open after tripping (if zero then 60
    # seconds is used).
    # CLI flag: -<prefix>.memcached.circuit-breaker-timeout
    [circuit_breaker_timeout: <duration> | default = 10s]
    
    # Reset circuit-breaker counts after this long (if zero then never reset).
    # CLI flag: -<prefix>.memcached.circuit-breaker-interval
    [circuit_breaker_interval: <duration> | default = 10s]
    

    redis:
    # Redis Server or Cluster configuration endpoint to use for caching. A
    # comma-separated list of endpoints for Redis Cluster or Redis Sentinel. If
    # empty, no redis will be used.
    # CLI flag: -<prefix>.redis.endpoint
    [endpoint: <string> | default = ""]

    # Redis Sentinel master name. An empty string for Redis Server or Redis
    # Cluster.
    # CLI flag: -<prefix>.redis.master-name
    [master_name: <string> | default = ""]
    
    # Maximum time to wait before giving up on redis requests.
    # CLI flag: -<prefix>.redis.timeout
    [timeout: <duration> | default = 500ms]
    
    # How long keys stay in the redis.
    # CLI flag: -<prefix>.redis.expiration
    [expiration: <duration> | default = 0s]
    
    # Database index.
    # CLI flag: -<prefix>.redis.db
    [db: <int> | default = 0]
    
    # Maximum number of connections in the pool.
    # CLI flag: -<prefix>.redis.pool-size
    [pool_size: <int> | default = 0]
    
    # Username to use when connecting to redis.
    # CLI flag: -<prefix>.redis.username
    [username: <string> | default = ""]
    
    # Password to use when connecting to redis.
    # CLI flag: -<prefix>.redis.password
    [password: <string> | default = ""]
    
    # Enable connecting to redis with TLS.
    # CLI flag: -<prefix>.redis.tls-enabled
    [tls_enabled: <boolean> | default = false]
    
    # Skip validating server certificate.
    # CLI flag: -<prefix>.redis.tls-insecure-skip-verify
    [tls_insecure_skip_verify: <boolean> | default = false]
    
    # Close connections after remaining idle for this duration. If the value is
    # zero, then idle connections are not closed.
    # CLI flag: -<prefix>.redis.idle-timeout
    [idle_timeout: <duration> | default = 0s]
    
    # Close connections older than this duration. If the value is zero, then the
    # pool does not close connections based on age.
    # CLI flag: -<prefix>.redis.max-connection-age
    [max_connection_age: <duration> | default = 0s]
    
    # By default, the Redis client only reads from the master node. Enabling this
    # option can lower pressure on the master node by randomly routing read-only
    # commands to the master and any available replicas.
    # CLI flag: -<prefix>.redis.route-randomly
    [route_randomly: <boolean> | default = false]
    

    embedded_cache:
    # Whether embedded cache is enabled.
    # CLI flag: -<prefix>.embedded-cache.enabled
    [enabled: <boolean> | default = false]

    # Maximum memory size of the cache in MB.
    # CLI flag: -<prefix>.embedded-cache.max-size-mb
    [max_size_mb: <int> | default = 100]
    
    # The time to live for items in the cache before they get purged.
    # CLI flag: -<prefix>.embedded-cache.ttl
    [ttl: <duration> | default = 1h]
    

    fifocache:
    # Maximum memory size of the cache in bytes. A unit suffix (KB, MB, GB) may be
    # applied.
    # CLI flag: -<prefix>.fifocache.max-size-bytes
    [max_size_bytes: <string> | default = "1GB"]

    # deprecated: Maximum number of entries in the cache.
    # CLI flag: -<prefix>.fifocache.max-size-items
    [max_size_items: <int> | default = 0]
    
    # The time to live for items in the cache before they get purged.
    # CLI flag: -<prefix>.fifocache.ttl
    [ttl: <duration> | default = 1h]
    
    # Deprecated (use ttl instead): The expiry duration for the cache.
    # CLI flag: -<prefix>.fifocache.duration
    [validity: <duration> | default = 0s]
    
    # Deprecated (use max-size-items or max-size-bytes instead): The number of
    # entries to cache.
    # CLI flag: -<prefix>.fifocache.size
    [size: <int> | default = 0]
    
    [purgeinterval: <duration>]
    

    The maximum number of concurrent asynchronous writeback cache can occur.

    CLI flag: -<prefix>.max-async-cache-write-back-concurrency

    [async_cache_write_back_concurrency: <int> | default = 16]

    The maximum number of enqueued asynchronous writeback cache allowed.

    CLI flag: -<prefix>.max-async-cache-write-back-buffer-size

    [async_cache_write_back_buffer_size: <int> | default = 500]

相关推荐
浪浪山小白兔4 分钟前
HTML5 常用事件详解
前端·html·html5
Python大数据分析@21 分钟前
通俗的讲,网络爬虫到底是什么?
前端·爬虫·网络爬虫
Lysun00143 分钟前
vue2的$el.querySelector在vue3中怎么写
前端·javascript·vue.js
jerry-891 小时前
Centos类型服务器等保测评整/etc/pam.d/system-auth
java·前端·github
小爬菜1 小时前
Django学习笔记(启动项目)-03
前端·笔记·python·学习·django
想要打 Acm 的小周同学呀1 小时前
前端Vue2项目使用md编辑器
前端·编辑器·vue2·markdown 语法
计算机-秋大田2 小时前
基于SSM的家庭记账本小程序设计与实现(LW+源码+讲解)
java·前端·后端·微信小程序·小程序·课程设计
海的预约2 小时前
VUE之路由Props、replace、编程式路由导航、重定向
前端·vue.js·智能路由器
西柚与蓝莓3 小时前
报错:{‘csrf_token‘: [‘The CSRF token is missing.‘]}
前端·flask
德迅云安全-小钱4 小时前
跨站脚本攻击(XSS)原理及防护方案
前端·网络·xss