Parameters
The parent key for all of the following parameters is loki.
namespace
| type |
dict |
||||||
| default |
|
The namespace in which to deploy this component.
charts
| type |
dict |
| default |
|
Holds the reference to the used version of the charts. See class/defaults.yml for the current version.
images
| type |
dict |
| default |
|
| example |
|
Configures the image registry, repository and tag.
|
If the |
preset
| type |
string |
| default |
|
Choose a preset for scaling the Loki components.
Available options: none, legacy, extra-small.
|
Only use |
components
Configuration of the different Loki components.
|
The values of each component reflect the corresponding sections in the Helm charts |
Read path: querier, queryFrontend, queryScheduler. Write path: distributor, ingester. Backend: compactor, indexGateway. Ingress: gateway. Optional: alertmanager, overridesExporter, patternIngester, ruler. Experimental: bloomGateway, bloomPlanner, bloomBuilder
components.querier
| type |
dict |
| default |
|
The querier service is responsible for executing Log Query Language (LogQL) queries. The querier can handle HTTP requests from the client directly or pull subqueries from the query frontend or query scheduler.
components.queryFrontend
| type |
dict |
| default |
|
The query frontend is an optional service providing the querier’s API endpoints and can be used to accelerate the read path. When the query frontend is in place, incoming query requests should be directed to the query frontend instead of the queriers. The querier service will be still required within the cluster, in order to execute the actual queries.
components.queryScheduler
| type |
dict |
| default |
|
The query scheduler is an optional service providing more advanced queuing functionality than the query frontend. When using this component in the Loki deployment, query frontend pushes split up queries to the query scheduler which enqueues them in an internal in-memory queue.
components.distributor
| type |
dict |
| default |
|
The distributor service is responsible for handling incoming push requests from clients. It’s the first step in the write path for log data.
components.ingester
| type |
dict |
| default |
|
The ingester service is responsible for persisting data and shipping it to long-term S3 storage on the write path, and returning recently ingested, in-memory log data for queries on the read path.
components.compactor
| type |
dict |
| default |
|
The compactor service is used to compact the multiple index files produced by the ingesters and shipped to object storage into single index files per day and tenant. This makes index lookups more efficient.
components.indexGateway
| type |
dict |
| default |
|
The index gateway service is responsible for handling and serving metadata queries. Metadata queries are queries that look up data from the index.
components.gateway
| type |
dict |
| default |
|
The Loki gateway is a critical component for query, write, and alert paths. It improves performance and simplifies deployments by acting as a single entry point for all Loki requests.
components.alertmanager
| type |
dict |
| default |
|
The Loki Alertmanager is an optional component that accepts alert notifications from the Loki ruler.
components.overridesExporter
| type |
dict |
| default |
|
Grafana Loki supports applying overrides on a per-tenant basis. A number of overrides configure limits that prevent a single tenant from using too many resources. The overrides-exporter component exposes limits as Prometheus metrics so that operators can understand how close tenants are to their limits.
components.patternIngester
| type |
dict |
| default |
|
The optional pattern ingester component receives log data from the ingesters and scans the logs to detect and aggregate patterns. This can be useful for understanding the structure of your logs at scale. The pattern ingester is used by the pattern feature in Logs Drilldown, which lets you detect similar log lines and add or exclude them from your search.
caches
Configuration of the cache components of Loki. Caching is optional, but highly recommended in a production environment.
|
The values of each component reflect the corresponding sections in the Helm charts |
caches.chunks
| type |
dict |
| default |
|
The chunks are cached using the chunkRef as the cache key, which is the unique reference to a chunk when it’s cut in the Loki ingesters.
The chunk cache is consulted by queriers each time a set of chunkRefs are calculated to serve the query, before going to the storage layer.
experimental
Configuration of the experimental components of Loki.
| This is are experimental features, use at your own discretion. |
|
The values of each component reflect the corresponding sections in the Helm charts |
experimental.bloomPlanner
| type |
dict |
| default |
|
The Bloom Planner service is responsible for planning the tasks for blooms creation. It runs as a singleton and provides a queue from which tasks are pulled by the Bloom Builders. The planning runs periodically and takes into account what blooms have already been built for a given day and tenant and what series need to be newly added.
experimental.bloomBuilder
| type |
dict |
| default |
|
The Bloom Builder service is responsible for processing the tasks created by the Bloom Planner. The Bloom Builder creates bloom blocks from structured metadata of log entries. The resulting blooms are grouped in bloom blocks spanning multiple series and chunks from a given day. This component also builds metadata files to track which blocks are available for each series and TSDB index file.
experimental.bloomGateway
| type |
dict |
| default |
|
The Bloom Gateway service is responsible for handling and serving chunks filtering requests. The index gateway queries the Bloom Gateway when computing chunk references, or when computing shards for a given query. The gateway service takes a list of chunks and a filtering expression and matches them against the blooms, filtering out any chunks that do not match the given label filter expression.
global
Configure global settings.
s3
Configure S3 for storage.
s3.endpoint
| type |
string |
| default |
`` |
| example |
|
Conigure the endpoint for the S3 storage.
s3.region
| type |
string |
| default |
|
| example |
|
Conigure the region for the S3 storage.
|
For Cloudscale and Exoscale the region will be calculated from cluster facts. |
s3.auth
| type |
dict |
| default |
|
Configure access- and secret key for the S3 storage.
secrets
| type |
dict |
| default |
|
| example |
|
A dict of secrets to create in the namespace. The key is the name of the secret, the value is the content of the secret.
The value must be a dict with a key stringData which is a dict of key/value pairs to add to the secret.
alerts
Configurations related to alerts.
|
Upstream service monitors, rules, and alerts can be enabled by setting the following Helm values:
|
alerts.additionalRules
| type |
dict |
| default | |
| example |
|
This parameter allows users to configure additional alerting and recording rules.
All rules defined in this parameter will be added to rule group loki-custom.rules.
alerts.patchRules
| type |
dict |
| default | |
| example |
|
This parameter allows users to patch or remove alerts provided by the upstream Loki chart.
The values in the ignoreNames parameter correspond to the field alert of the alert to ignore.
The keys in the patches parameter correspond to the field alert of the alert to patch.
The component expects valid partial Prometheus alert rule objects as values.
| The provided values aren’t validated, they’re applied to the corresponding upstream alert as-is. |