File project.diff of Package loki
--- _service.orig
+++ _service
@@ -7,7 +7,7 @@
<param name="versionformat">@PARENT_TAG@+git@TAG_OFFSET@.%h</param>
-->
<param name="versionformat">@PARENT_TAG@</param>
- <param name="revision">v3.6.8</param>
+ <param name="revision">v3.7.1</param>
<param name="versionrewrite-pattern">v(.*)</param>
<param name="submodules">disable</param>
<param name="changesgenerate">enable</param>
--- _servicedata.orig
+++ _servicedata
@@ -3,4 +3,4 @@
<param name="url">git://github.com/grafana/loki.git</param>
<param name="changesrevision">525040a3265715ca8cfb52cd39108ccfac9f8af6</param></service><service name="tar_scm">
<param name="url">https://github.com/grafana/loki.git</param>
- <param name="changesrevision">138c391fd0237b8bf1eb9ecf9eb14d8ce04727c5</param></service></servicedata>
\ No newline at end of file
+ <param name="changesrevision">2c8fff222bab6813374b973ae0eb49043d3ed14e</param></service></servicedata>
\ No newline at end of file
--- loki.changes.orig
+++ loki.changes
@@ -1,4 +1,1091 @@
-------------------------------------------------------------------
+Fri Mar 27 16:55:37 UTC 2026 - Marcus Rueckert <mrueckert@suse.de>
+
+- Refresh proper-data-directories.patch
+- promtail got removed upstream
+
+-------------------------------------------------------------------
+Fri Mar 27 11:54:14 UTC 2026 - Marcus Rueckert <mrueckert@suse.de>
+
+- Update to version 3.7.1:
+ * fix: Upgrade Go and gRPC versions on 3.7.x (#21282)
+ * docs: backport meta-monitoring topic (#21287)
+ * docs: Loki 3.7 Release Notes (backport release-3.7.x) (#21285)
+ * chore(k299): release 3.7.0 (#21275)
+
+-------------------------------------------------------------------
+Thu Mar 26 16:33:07 UTC 2026 - Marcus Rueckert <mrueckert@suse.de>
+
+- Update to version 3.7.0:
+ * feat: Update references to v3.7.0 (backport k299) (#21274)
+ * docs: Update or remove Promtail references (backport k299) (#21273)
+ * fix: force releaseplease version (#21272)
+ * feat: release 3.7 (#21270)
+ * fix: Use newer Go in fluentbit and fix canary test (backport k299) (#21257)
+ * feat: Remove Promtail support (backport k299) (#21248)
+ * fix: if we don't know the rate of a segmentation key, shard the stream (#21210)
+ * fix(deps): update module go.opentelemetry.io/contrib/instrumentation/net/http/httptrace/otelhttptrace to v0.67.0 (main) (#21073)
+ * fix(deps): update module github.com/aws/aws-sdk-go-v2/config to v1.32.12 (main) (#21091)
+ * fix(deps): update module google.golang.org/api to v0.272.0 (main) (#21151)
+ * chore(deps): Update prometheus - 2026-03-20 (#21211)
+ * fix(deps): update module golang.org/x/tools to v0.43.0 (main) (#21169)
+ * fix(deps): update module go.opentelemetry.io/collector/pdata to v1.53.0 (main) (#21058)
+ * fix(deps): update module go.opentelemetry.io/otel/sdk to v1.42.0 (main) (#21065)
+ * fix(deps): update module github.com/ibm/ibm-cos-sdk-go to v1.14.0 (main) (#21063)
+ * fix(deps): update module golang.org/x/text to v0.35.0 (main) (#21158)
+ * fix(deps): update module charm.land/lipgloss/v2 to v2.0.2 (main) (#21143)
+ * fix(deps): update module github.com/aws/aws-sdk-go-v2/credentials to v1.19.12 (main) (#21092)
+ * fix(deps): update module github.com/aws/aws-sdk-go-v2/service/dynamodb to v1.56.2 (main) (#21093)
+ * fix(deps): update module github.com/buger/jsonparser to v1.1.2 [security] (main) (#21200)
+ * fix(deps): update module cloud.google.com/go/bigtable to v1.43.0 (main) (#21209)
+ * fix(query-engine): Fix OR operations being silently dropped (#21204)
+ * fix(deps): update module k8s.io/apimachinery to v0.35.3 (main) (#21197)
+ * fix(deps): update module golang.org/x/oauth2 to v0.36.0 (main) (#21099)
+ * fix(deps): update module github.com/minio/minio-go/v7 to v7.0.99 (main) (#21096)
+ * fix(deps): update module github.com/apache/arrow-go/v18 to v18.5.2 (main) (#21052)
+ * chore(deps): update terraform google to v7.23.0 (main) (#21086)
+ * fix(deps): update module github.com/aws/smithy-go to v1.24.2 (main) (#21036)
+ * fix(deps): update module charm.land/bubbletea/v2 to v2.0.2 (main) (#21035)
+ * chore(deps): update dependency pytz to v2026 (main) (#21081)
+ * fix(deps): update module k8s.io/klog/v2 to v2.140.0 (main) (#21087)
+ * fix(deps): update module github.com/tjhop/slog-gokit to v0.1.6 (main) (#21080)
+ * fix(deps): update module github.com/baidubce/bce-sdk-go to v0.9.262 (main) (#21142)
+ * fix(deps): update module github.com/aws/aws-sdk-go-v2/service/s3 to v1.97.1 (main) (#21094)
+ * chore(deps): update terraform aws to ~> 6.36.0 (main) (#21104)
+ * fix(deps): update module github.com/pierrec/lz4/v4 to v4.1.26 (main) (#21109)
+ * chore(deps): update memcached docker tag to v1.6.41 (main) (#21121)
+ * fix(deps): update module github.com/parquet-go/parquet-go to v0.29.0 (main) (#21156)
+ * fix(deps): update module cloud.google.com/go/storage to v1.61.3 (main) (#21161)
+ * chore(deps): update grafana/grafana docker tag to v12.4.1 (main) (#21150)
+ * fix: skip benchmark queries unsupported by v2 engine for goldfish comparison (#21186)
+ * feat: don't shuffle shard if shard factor is 1 (#21190)
+ * chore: move partitions calc to numPartitionsForRate (#21188)
+ * chore( operator): community release 0.10.0 (#20115)
+ * fix(Thor): Allow non-strict parsing with logfmt (#21013)
+ * chore(operator): prepare community release v0.10.0 (#21175)
+ * feat: use stream sharding within segment subrings (#21181)
+ * fix: WAL replay hang when flush doesn't progress (#21176)
+ * docs: Update RN for 3.5.12 (#21182)
+ * fix(operator): CI has now moved to Vault so reusable workflow doesn't need to ask for secrets (#21174)
+ * docs: document detected_fields and detected_field/{name}/values API e… (#20895)
+ * feat(query-engine): Omit labels with empty values (#21173)
+ * feat: early goldfish correlation ID generation with X-Loki-Goldfish-ID header (#21155)
+ * feat(helm): finalize chart fork (#21166)
+ * fix: broken get and replace for s3 client (#21163)
+ * chore: add remote correctness tests for live Loki endpoints (#21120)
+ * fix: sanitize User-Agent to valid UTF-8 before using as Prometheus label value (#21162)
+ * test: Add cache correctness test (#21113)
+ * fix(deps): update github.com/prometheus/prometheus digest to 8b25b26 (main) (#21038)
+ * chore: Increase batch sizes for pointers reads (#20983)
+ * docs: fix two small typos (#21138)
+ * fix(operator): provide AWS region in environment variable for STS mode (#21136)
+ * docs: improve readability of helm chart values reference page (#21118)
+ * chore: update dataobj-inspect tool to work with latest dataobjs (#21145)
+ * chore: rename flushManager to flushCommitter to prepare for future changes (#21135)
+ * feat: add builder pool to logsobj package (#21134)
+ * chore: release loki helm chart 6.55.0 (#20855)
+ * chore: release loki helm chart 6.54.0 (#20754)
+ * refactor: Move batching to pipeline wrapper (#21123)
+ * chore: Improve level detection and best guess capability (#21132)
+ * chore: remove consumer package, no longer used (#21083)
+ * feat(helm): Add common labels to all resources (#20269)
+ * fix(helm): apply trafficDistribution setting to SingleBinary service (#20894)
+ * fix(helm): add support for disabling x509 strict verification in sidecar (#20818)
+ * feat(helm): Memcached: allow to override CPU in the auto-computed resource mode (#20767)
+ * fix(helm): ignore dots after first path segment when detecting image registry (#20695)
+ * fix(loki/single-binary): Add missing command to statefulset-recreate-job (#20556)
+ * fix(helm): make the loki-sc-rules sidecar container compatible with the most recent versions of k8s-sidecar (#20164)
+ * feat(helm): allow customization of write, read and backend PDB (#16871)
+ * fix(helm): fix syntax in loki-egress-dns CiliumNetworkPolicy manifest (#20221)
+ * docs: fix broken link (#21129)
+ * docs: Publish new TBSH landing page (#21076)
+ * docs: Adding one last error message (#21074)
+ * docs: cleanup formatting (#21071)
+ * feat(loki-query-engine): instrument query-engine with runtime/trace (#21000)
+ * docs: clarify max_chunk_age out-of-order window calculation (#21105)
+ * chore(bench): introduce metadata discovery tool (#21085)
+ * fix(goldfish): Normalize goldfish response (#21114)
+ * feat(loki): allow disabling cache for query_range requests (#21112)
+ * chore: use package private names for these types and funcs (#21111)
+ * feat: Add results cache to thor query engine (#20986)
+ * fix: allow blocking multiple query hashes (#21103)
+ * test: fixup related to entry iterator (#21070)
+ * chore: fix non-deterministic aggregator function (#21088)
+ * chore(test): fix flaky kafka test (#21089)
+ * fix: Add build tags to Promtail build commands (#19989)
+ * fix(operator): include Loki Operator in the Observability category in Operator Hub (#21084)
+ * fix(goldfish): support nulls in mismatch_cause (#21082)
+ * docs: update getting started with docker compose (#21079)
+ * docs: Troubleshooting API parameters (#21069)
+ * docs: Troubleshooting Pattern Ingester (#21068)
+ * docs: Troubleshooting Ingester Lifecycle (#21067)
+ * fix: prevent goroutine leak in downstreamer on context cancellation (#21062)
+ * docs: Troubleshooting WAL (#21061)
+ * docs: Troubleshooting Bloom Gateway (#21060)
+ * docs: Troubleshooting Kafka (#21057)
+ * docs: Troubleshooting ruler (#21056)
+ * feat: Add config to delegate stream limits check to limits-service only (#21007)
+ * docs: Troubleshooting Compactor (#21048)
+ * fix: typo - oki -> loki (#21051)
+ * docs: Troubleshooting index gateway (#21047)
+ * docs: Capitalization Fix - storage.md (#20251)
+ * docs: troubleshoot scheduler (#20843)
+ * chore(engine): ignore closed sources on bind (#20979)
+ * feat(operator)!: switch default for OpenShift stream labels (#21001)
+ * feat(engine): Dedupe entries when building final result (#21034)
+ * chore: while comparing log streams from query-tee, treat logs with same timestamp but different content ordered differently as a match (#21043)
+ * fix: duplicate lines with different structured metadata (#21039)
+ * docs: Troubleshoot DNS (#20842)
+ * docs: Troubleshooting TLS (#20841)
+ * docs: troubleshooting gRPC (#20840)
+ * fix(deps): update module github.com/hashicorp/consul/api to v1.33.4 (main) (#20961)
+ * fix(deps): update module github.com/charmbracelet/bubbles to v2 (main) (#21005)
+ * fix(deps): update module github.com/alicebob/miniredis/v2 to v2.37.0 (main) (#21017)
+ * fix(deps): update module github.com/shirou/gopsutil/v4 to v4.26.2 (main) (#21031)
+ * fix(deps): update module github.com/ibm/sarama to v1.47.0 (main) (#21029)
+ * fix(deps): update github.com/prometheus/prometheus digest to 1751685 (main) (#21028)
+ * fix(deps): update module github.com/aws/aws-sdk-go-v2/service/s3 to v1.96.2 (main) (#21025)
+ * chore(deps): update logstash docker tag to v9.3.1 (main) (#21024)
+ * chore(deps): update grafana/loki-build-image docker tag to v0.35.0 (main) (#21022)
+ * chore(deps): update terraform aws to ~> 6.34.0 (main) (#21020)
+ * chore(deps): update prom/prometheus docker tag to v3.10.0 (main) (#21019)
+ * fix(deps): update module google.golang.org/api to v0.269.0 (main) (#21014)
+ * chore(deps): update ruby docker tag to v4 (main) (#20383)
+ * fix(query-scheduler): Only do alignment for metric queries (#21030)
+ * fix(querytee): Compare parsed labels instead of structured metadata (#21018)
+ * fix(deps): update github.com/prometheus/prometheus digest to 3b1d658 (main) (#21003)
+ * fix(deps): update module github.com/aws/aws-sdk-go-v2/service/s3 to v1.96.1 (main) (#20993)
+ * chore(deps): update terraform google to v7.21.0 (main) (#21012)
+ * chore(deps): update grafana/grafana docker tag to v12.4.0 (main) (#21004)
+ * fix(deps): update module github.com/aws/aws-sdk-go-v2/service/dynamodb to v1.56.0 (main) (#20995)
+ * fix(thor): Return empty log lines properly for the new engine (#20971)
+ * fix(deps): update module google.golang.org/api to v0.268.0 (main) (#20989)
+ * fix(deps): update module k8s.io/apimachinery to v0.35.2 (main) (#20997)
+ * fix(deps): update module github.com/aws/aws-sdk-go-v2/config to v1.32.10 (main) (#20991)
+ * fix(deps): update github.com/prometheus/prometheus digest to 02b1aba (main) (#20964)
+ * fix(deps): update module github.com/pressly/goose/v3 to v3.27.0 (main) (#20965)
+ * docs: Troubleshooting readiness (#20838)
+ * feat: Align start time when the query is received (#20967)
+ * feat(build): Move to Go 1.26 (#20988)
+ * chore(build): Tweaks to support golangci-lint 2.10.1 (#20985)
+ * fix(deps): update module github.com/parquet-go/parquet-go to v0.28.0 (main) (#20973)
+ * ci: expose suite option, use exhaustive for cron (#20972)
+ * fix(deps): update module github.com/grafana/loki/v3 to v3.6.7 (main) (#20975)
+ * chore(loki): add more http2 errors (#20984)
+ * docs: Troubleshooting ring (#20810)
+ * fix(engine): fix additional instances of writing/reading on a closed conn (#20982)
+ * chore: query tee comparator telemetry improvements (#20849)
+ * perf(tsdb): don't fetch labels in TSDBIndex.GetChunkRefs (#20970)
+ * perf(tsdb): return full slice to pool after use (#20969)
+ * chore: Add S3 bucket configuration function for querycomparator (#20777)
+ * feat(operator): update metrics authentication to remove dependency on kube-rbac-proxy (#20853)
+ * fix(operator): properly handle the deprecated replicationFactor (#20935)
+ * fix(operator): fix incorrect image reference in olm bundle (#20966)
+ * perf(logql): use simpler function to drop empty labels (#20938)
+ * fix(deps): update github.com/prometheus/prometheus digest to c317f92 (main) (#20958)
+ * fix(logql): return error on way-too-long label string (#20937)
+ * feat(limits): Add emptiness check to prepare for multiAZ (#20927)
+ * chore(thor): Parallel query engine correctness tests (#20811)
+ * chore(engine): don't observe task execution time if there's no assign time (#20956)
+ * chore(test): Address deadlock in mempool test (#20955)
+ * feat: Batch records before writing to sinks (#20821)
+ * chore(deps): update helm release rollout-operator to v0.43.0 (main) (#20905)
+ * chore(dataobj): prefetch during open for rowReaderDownloader (#20942)
+ * fix(deps): update module github.com/aws/aws-sdk-go-v2/config to v1.32.9 (main) (#20901)
+ * chore(deps): Scope renovate prometheus updates (#20954)
+ * chore(dataobj): add configurable prefetching (#20946)
+ * chore(thor): Disable admission lanes for non-log queries (#20947)
+ * build(operator): update Go to v1.25, dependencies, tools and CI (#20896)
+ * chore(operator): introduced dynamic VERSION to olm commands (#20774)
+ * fix(deps): update module github.com/datadog/sketches-go to v1.4.8 (main) (#20940)
+ * fix(deps): update module github.com/aws/smithy-go to v1.24.1 (main) (#20939)
+ * fix(deps): update module github.com/grafana/loki/v3 to v3.6.6 (main) (#20907)
+ * fix(deps): update module github.com/twmb/franz-go to v1.20.7 (main) (#20908)
+ * fix(deps): update module github.com/aws/aws-sdk-go-v2/credentials to v1.19.9 (main) (#20902)
+ * chore(deps): update terraform google to v7.20.0 (main) (#20899)
+ * fix(deps): update module cloud.google.com/go/bigtable to v1.42.0 (main) (#20737)
+ * chore(deps): update terraform aws to ~> 6.33.0 (main) (#20912)
+ * fix(deps): update module google.golang.org/api to v0.267.0 (main) (#20900)
+ * fix(deps): update module go.opentelemetry.io/collector/pdata to v1.52.0 (main) (#20909)
+ * chore(deps): update fluent/fluent-bit docker tag to v4.2.3 (main) (#20911)
+ * chore(deps): Enable digest support for Prometheus updates (#20950)
+ * chore(deps): Disable renovate updates for push go.mod file (#20949)
+ * chore: add latency metric for objstore client (#20948)
+ * feat(operator): add option to customize gateway server cert (#20325)
+ * chore(dataobj): add missing test for opening legacy object (#20943)
+ * chore: merge the responses from each backend in ring.go (#20877)
+ * feat: put kotel behind a flag (#20933)
+ * chore(thor): Performance optimization for aggregator (#20934)
+ * fix(test): Ensure timestamp test works in all timezones (#20916)
+ * fix(operator): dynamically configure networkpolicy when a Kubernetes service is used for object storage (#20111)
+ * docs: Release Notes 3.5.11 (#20929)
+ * docs: Release Notes 3.6.7 (#20928)
+ * fix(engine): align range-query evaluation timestamps to the step grid (#20904)
+ * chore: bump claude.yml too (#20922)
+ * chore: bump Claude Code to tag v1.0.55 (#20921)
+ * chore: use map instead of bloom filter as cache (#20882)
+ * fix: fix two skipped logql benchmark queries (#20897)
+ * fix(thor): Fix for column duplicates in consequent compat stages (#20893)
+ * fix(deps): use correct google.golang.org/genproto/googleapis/rpc transitive module (#20898)
+ * perf(dataset): use faster Uvarint implementation (#20824)
+ * fix(operator): add additional port to networkpolicy when using Swift (#20129)
+ * fix(alloc): set a limit on preallocations (#20891)
+ * chore: refactor the logql benchmark suite (#20845)
+ * fix(deps): update module google.golang.org/api to v0.266.0 (main) (#20483)
+ * fix(deps): update module github.com/redis/go-redis/v9 to v9.18.0 (main) (#20878)
+ * fix(deps): update module github.com/influxdata/telegraf to v1.37.2 (main) (#20707)
+ * chore(deps): update module filippo.io/edwards25519 to v1.1.1 [security] (main) (#20872)
+ * fix(deps): update module github.com/fsouza/fake-gcs-server to v1.54.0 (main) (#20687)
+ * chore: Ignore errgroup context in decoder (#20880)
+ * chore: upgrade to prometheus@main (#20876)
+ * chore: disable the accepted stream cache while we continue to validate its effectivenss (#20879)
+ * chore(dataobj): restructure dataobjs to store metadata at the front of the file (#20865)
+ * fix: Reset lag for index builder when partitions change (#20825)
+ * chore(metastore): fix panic in index sections reader (#20875)
+ * chore(planner): apply parallelPushdown optimisation to valid aggregations (#20655)
+ * chore: use dedicated enabled flags (#20863)
+ * docs: update deployment-modes.md for ssd deprecation (#20869)
+ * docs: Update name to learning path (#20867)
+ * docs: fix link typo in 3.6 release (#20862)
+ * chore(engine): enable native histograms for engine execution phases (#20861)
+ * feat: refactor frontend cache, add metrics, filter out cached streams (#20860)
+ * fix(operator): always generate full set of condition metrics for each LokiStack (#19509)
+ * docs: Update version number (#20858)
+ * docs: 3.6.6 Release Notes (#20856)
+ * fix(deps): update module golang.org/x/tools to v0.42.0 (main) (#20796)
+ * chore: End index reader span on Close (#20854)
+ * chore(engine): add concurrency to Pipeline.Open (#20839)
+ * chore: remove deprecated metrics (#20844)
+ * chore: replace quartz with synctest (#20850)
+ * chore(metastore): fix metastore.indexSectionsReader Open semantics (#20835)
+ * docs: Troubleshooting cache (#20809)
+ * fix(deps): update module github.com/baidubce/bce-sdk-go to v0.9.260 (main) (#20816)
+ * chore(deps): update terraform google to v7.19.0 (main) (#20807)
+ * fix(deps): update module golang.org/x/text to v0.34.0 (main) (#20792)
+ * fix(deps): update module golang.org/x/net to v0.50.0 (main) (#20795)
+ * chore(deps): update grafana/grafana docker tag to v12.3.3 (main) (#20819)
+ * fix(deps): update module github.com/prometheus/alertmanager to v0.31.1 (main) (#20815)
+ * fix(deps): update module google.golang.org/grpc to v1.79.1 (main) (#20813)
+ * chore(deps): update prom/alertmanager docker tag to v0.31.1 (main) (#20814)
+ * chore(deps): update terraform aws to ~> 6.32.0 (main) (#20828)
+ * docs: Troubleshooting storage (#20808)
+ * chore(xcap): leaner xcap API (#20771)
+ * chore(scheduler): assign tasks in per-worker loop (#20826)
+ * fix: use TrimSuffix over Trim (#20830)
+ * feat: add bloom filter to cache known streams for ExceedsLimits requests (#20823)
+ * fix(operator): configure to extract selectors to allow fine-grained auth in openshift-network mode (#19958)
+ * docs: Troubleshooting auth (#20806)
+ * fix(thor): incorrect empty records skipping (#20812)
+ * docs: Troubleshooting config errors (#20805)
+ * docs: add drilldown troubleshooting (#20799)
+ * docs: multi-tenant development environment (#19650)
+ * chore: fix panic on read err in batchDecoratorReader (#20787)
+ * chore(deps): Remove references to github.com/prometheus/prometheus/tsdb/errors (#20794)
+ * chore(engine): fix streamsView.Open semantics (#20802)
+ * chore: Lower loglevel for transport is closing #7649 (#20803)
+ * chore: finish adding Open semantics in engine, metastore (#20798)
+ * chore: Lower loglevel for cancelled queries (#7649) (#20801)
+ * feat: Introduce a rate batcher to batch rate updates (#20784)
+ * chore(dataobj): Add Open semantics to section readers (#20790)
+ * fix(deps): update module github.com/charmbracelet/bubbles to v1 (main) (#20788)
+ * fix(deps): update module golang.org/x/sys to v0.41.0 (main) (#20759)
+ * fix(deps): update module k8s.io/apimachinery to v0.35.1 (main) (#20758)
+ * feat(operator): Update Loki operand to v3.6.5 (#20696)
+ * refactor(engine): introduce Pipeline.Open method (#20785)
+ * chore(dataobj): encode final dataobj size in dataobj metadata (#20769)
+ * fix: correctness failure for aggregations with a drop (#20782)
+ * docs: Update helm charts note with date (#20781)
+ * docs: Add SSD Deprecation notices (#20778)
+ * docs: Release Notes 3.5.10 (#20773)
+ * feat: allow the initial offset to be set in the starting phase (#20770)
+ * perf(operator): simplification to status validation (#20725)
+ * fix: Mask all credentials (#20766)
+ * feat: close the records chan when consumer terminates (#20761)
+ * fix(dataobj-inspect): Enhance dump and list-streams commands (#20757)
+ * chore: use StartAndAwait functions (#20755)
+ * chore(dataobj): rename dataset.ReaderOptions to dataset.RowReaderOptions (#20756)
+ * feat: add GroupConsumer to kafkav2 package (#20748)
+ * chore(deps): dskit update for Loki (#20753)
+ * chore: release loki helm chart 6.53.0 (#20722)
+ * docs: readme-migration-notice (#20750)
+ * fix(deps): update module google.golang.org/grpc to v1.78.0 (main) (#20380)
+ * fix(deps): update module go.opentelemetry.io/contrib/instrumentation/net/http/httptrace/otelhttptrace to v0.65.0 (main) (#20702)
+ * chore(deps): update helm release rollout-operator to v0.41.0 (main) (#20736)
+ * fix: backoff if no records returned, instead of at least one error (#20747)
+ * fix: cancelation in kafkv2/consumer.go (#20745)
+ * fix: reject streams with labels exceeding 16MB (#20719)
+ * fix(deps): update module go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp to v0.65.0 (main) (#20703)
+ * chore(columnar): add array slicing (#20727)
+ * chore: implement idiomatic worker pattern in indexer.go (#20646)
+ * fix(operator): networkpolicies allow access through proxy port when a proxy is configured (#20194)
+ * fix(deps): update module go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc to v0.65.0 (main) (#20701)
+ * fix(deps): update module go.opentelemetry.io/collector/pdata to v1.51.0 (main) (#20700)
+ * fix(deps): update module github.com/aws/aws-sdk-go-v2/service/dynamodb to v1.55.0 (main) (#20729)
+ * fix(deps): update module golang.org/x/oauth2 to v0.35.0 (main) (#20740)
+ * fix(deps): update module github.com/prometheus/alertmanager to v0.31.0 (main) (#20692)
+ * chore(deps): update terraform google to v7.18.0 (main) (#20728)
+ * fix(deps): update module github.com/charmbracelet/bubbles to v0.21.1 (main) (#20713)
+ * chore(deps): update prom/alertmanager docker tag to v0.31.0 (main) (#20691)
+ * chore(deps): update terraform aws to ~> 6.31.0 (main) (#20739)
+ * fix(deps): update module github.com/klauspost/compress to v1.18.4 (main) (#20743)
+ * fix(deps): update module github.com/prometheus/sigv4 to v0.4.1 (main) (#20688)
+ * chore(deps): update logstash docker tag to v9.3.0 (main) (#20742)
+ * fix(deps): update module github.com/grafana/loki/v3 to v3.6.5 (main) (#20746)
+ * chore(compute): move to mini-DSL for defining unit tests (#20735)
+ * fix: handle lost partitions in index builders (#20744)
+ * fix(wire): fix panic on accept (#20720)
+ * chore(expr): add selection vectors support (#20669)
+ * feat(bench): add simulated object storage latency to LogQL benchmarks (#20733)
+ * fix: correct missing accumulation metric (#20734)
+ * docs: Update Helm storage config example in Azure deployment guide (#20721)
+ * chore: bring comparison metrics and goldfish metrics more in line (#20706)
+ * docs: Release Notes for 3.6.5 release (#20704)
+ * chore(memory): permit slicing memory.Bitmap (#20699)
+ * feat: Update to go 1.25.7 (#20694)
+ * chore: Implement wire metrics for schedulers, workers (#20698)
+ * feat: add flush manager to control data object flush lifecycle (#20680)
+ * feat: add case-insensitive regex optimization (#20578)
+ * feat(enginev2): Implement IsMember compute function (#20689)
+ * chore: release loki helm chart 6.52.0 (#20559)
+ * chore: small doc fix, missing period end of help (#20681)
+ * docs: update docker compose (#20683)
+ * chore: no lazy struct embed (#20682)
+ * ci: add drilldown and case insensitive queries to correctness tests (#20603)
+ * chore: remove frontend section from AGENTS.md (#20675)
+ * docs: update link to learning journey to reflect new unified journey (#20665)
+ * chore(dataobj): Refactor and extract row range logic (#20661)
+ * chore: Fix flaky indexer test (#20676)
+ * fix(dataobj): Also apply categorize labels to parsed labels (#20671)
+ * chore: remove unused frontend cursor rule (#20674)
+ * fix: service failure on stopping kafkav2 consumer (#20672)
+ * chore: resolve predicate columns in distributed metastore (#20504)
+ * chore: use temporary builder to sort data objects (#20664)
+ * fix(operator): set ingester minimum available pods based on replication factor (#19517)
+ * fix(dataobj): Mark events completed after successful commit (#20658)
+ * fix(deps): update module cloud.google.com/go/storage to v1.59.2 (main) (#20632)
+ * chore(deps): update terraform google to v7.17.0 (main) (#20627)
+ * chore(deps): update grafana/grafana docker tag to v12.3.2 (main) (#20628)
+ * chore(deps): update alpine docker tag to v3.23.3 (main) (#20630)
+ * chore(engine): add missing godoc comments in planner, workflow (#20656)
+ * chore: clean up data object tee metrics code (#20652)
+ * chore(expr): support regex and case-sensitive substring search (#20657)
+ * chore: Add fmt.Stringer support to Workflow and Plan (#20651)
+ * chore: make high cardinality labels opt-in in dataobj-tee (#20643)
+ * chore: move metrics into observeRecordErr (#20625)
+ * feat(enginev2): Implement regexp compute function (#20642)
+ * feat(enginev2): Implement substr compute function (#20641)
+ * chore: Preserve order of log operations in the logical plan. (#20604)
+ * perf: Prealloc slice in index builder when downloading objects (#20647)
+ * fix(deps): update module github.com/shirou/gopsutil/v4 to v4.26.1 (main) (#20635)
+ * fix(deps): update module github.com/aws/aws-sdk-go-v2/service/s3 to v1.96.0 (main) (#20633)
+ * fix(deps): update module github.com/heroku/x to v0.5.3 (main) (#20637)
+ * chore(deps): update terraform aws to ~> 6.30.0 (main) (#20634)
+ * fix(deps): update module github.com/baidubce/bce-sdk-go to v0.9.259 (main) (#20644)
+ * chore(engine): introduce experimental expression engine (#20626)
+ * chore: Refactor to avoid sharing a download worker (#20640)
+ * feat(dataobj-compactor): add a planner for compaction of data objects (#20527)
+ * chore: Add AI agent tooling and rename agent documentation (#20609)
+ * chore(dataobj): rename dataset.Reader to RowReader (#20629)
+ * fix: set consumption lag to zero after idle flush timeout (#20620)
+ * fix(dataobj): Avoid deadlock in index-builder when cancelling mid-build (#20621)
+ * chore: clean up consumer metrics (#20619)
+ * feat: separate metastore events and offsets from flushes (#20605)
+ * chore(deps): update terraform random to v3.8.1 (main) (#20624)
+ * chore(ci): Bump claude-code-action to 1.0 of the action (#20623)
+ * chore: make memory, columnar APIs more idiomatic (#20622)
+ * chore(compute): add equality functions (#20618)
+ * chore: Panic on marshaling errors in scheduler wire implementation. (#20588)
+ * chore(compute): introduce experimental compute package for dataobj (#20575)
+ * fix: revert "feat: reset the consumption lag gauge after 1 minute of idle period" (#20617)
+ * feat: reset the consumption lag gauge after 1 minute of idle period (#20616)
+ * chore: no need for defer func (#20615)
+ * fix: Fix typo in Helm deployment guide (#20608)
+ * feat: Add SubstringInsensitive compute fn (#20584)
+ * perf: avoid bytes to runes allocs by decoding in place (#20602)
+ * chore: Update bytes processed to use real counts instead of pages dow… (#20611)
+ * chore: move builder initialization out of processor.go (#20594)
+ * chore(xcap): link parents in workflow while merging captures (#20596)
+ * chore: clean up partition processor code (#20593)
+ * fix(deps): update module github.com/bmatcuk/doublestar/v4 to v4.10.0 (main) (#20601)
+ * fix(deps): update module github.com/apache/arrow-go/v18 to v18.5.1 (main) (#20574)
+ * fix(operator): Update maximum OpenShift version (#20600)
+ * fix(deps): update module go.opentelemetry.io/collector/pdata to v1.50.0 (main) (#20558)
+ * fix(deps): update module github.com/alecthomas/chroma/v2 to v2.23.1 (main) (#20570)
+ * fix(deps): update module github.com/redis/go-redis/v9 to v9.17.3 (main) (#20597)
+ * fix(deps): update module github.com/twmb/franz-go/pkg/kadm to v1.17.2 (main) (#20566)
+ * fix(deps): update module github.com/alicebob/miniredis/v2 to v2.36.1 (main) (#20564)
+ * fix(deps): update module github.com/aws/aws-sdk-go-v2/service/dynamodb to v1.54.0 (main) (#20568)
+ * fix(deps): update module github.com/grafana/loki/v3 to v3.6.4 (main) (#20563)
+ * chore(memory): prevent concurrent use of Allocator (#20598)
+ * perf(dataobj): Optimize estimate size calculation (#20595)
+ * fix(enginev2): Copy values when storing min/max stats (#20589)
+ * docs: fix generic placeholder definitions for int and duration types (#20485)
+ * chore(columnartest): add testing utility package for columnar (#20585)
+ * chore(columnar): add scalars and builders (#20583)
+ * chore: Fix protos for remote transport (#20582)
+ * chore(columnar): switch to generic Number type (#20580)
+ * chore(dataobj): use reader adapter (#20572)
+ * fix: correct relative path to configuration examples (#20546)
+ * fix(thor): Fix error filtering before range aggregations (#20560)
+ * chore(dataobj): move columnar.Array translation up to basicReader (#20551)
+ * chore: Use columnar reader for IndexSectionReader (#20501)
+ * fix(engine): correct 'end' attribute in Basic.Execute trace span (#20561)
+ * chore: Reducing waste on processing empty records (#20562)
+ * fix(helm): Update version in values.yaml (#20548)
+ * chore(goldfish): tidy up tolerance based comparison (#20515)
+ * chore(engine): enforce max_query_series (#20557)
+ * chore: capture aggregation exec duration (#20299)
+ * feat: V2 query engine limits (#20549)
+ * chore(dataobj): add reader_adapter (#20525)
+ * chore: add backend_alias and issuer to query-tee comparison metrics (#20553)
+ * refactor: move querytee out of tools (#20552)
+ * docs: add note to RN (#20554)
+ * chore: Set scheduler lookup interval in logql bench tests (#20550)
+ * chore(dataobj): move columnar.Array translation up to columnReader (#20531)
+ * fix: shuffle shard cache size is experimental (#20526)
+ * chore(goldfish): router should be aware of object lifecycle (#20519)
+ * chore(engine): enforce retention at query time (#20497)
+ * chore: Thor query engine memory improvements, part 3 (#20530)
+ * fix(deps): update module github.com/influxdata/telegraf to v1.37.1 (main) (#20455)
+ * chore: release loki helm chart 6.51.0 (#20537)
+ * docs: fix upgrade Helm version (#20533)
+ * chore: release loki helm chart 6.50.0 (#20246)
+ * feat: Add multi-tenant query routing support to splitting handler (#20511)
+ * ci: add multi-arch build verification workflow for Loki binary (#20502)
+ * docs: Release Notes 3.6.4 (#20528)
+ * fix(deps): update module github.com/alecthomas/chroma/v2 to v2.23.0 (main) (#20499)
+ * fix(deps): update module github.com/klauspost/compress to v1.18.3 (main) (#20494)
+ * chore: Extract partition-ring cache size as param (#20522)
+ * chore: Tag worker profiles with fragment root node (#20521)
+ * chore: Thor query engine memory improvements, part 2 (#20473)
+ * fix(deps): update module github.com/pierrec/lz4/v4 to v4.1.25 (main) (#20345)
+ * chore(dataobj): Use columnar API in pageReader (#20509)
+ * fix(deps): update module github.com/baidubce/bce-sdk-go to v0.9.258 (main) (#20486)
+ * fix(deps): update module cloud.google.com/go/storage to v1.59.1 (main) (#20482)
+ * chore(deps): update logstash docker tag to v9.2.4 (main) (#20479)
+ * feat: Add a new `Register` hook and modify dataobjs tee to report errors (#20417)
+ * chore: Bump dskit dependency (#20518)
+ * ci(claude): add security comments (#20517)
+ * fix(xcap): properly report end (#20505)
+ * feat: Add Header Propagation and Stream Filtering to V2 Query Engine (#20449)
+ * fix: improve log line level detection (#19944)
+ * chore: replace quartz with synctest (#20452)
+ * fix: service failed to shutdown errors when context canceled (#20450)
+ * chore(memory): retain returned child memory (#20508)
+ * chore: Introduce parent-child memory allocators (#20506)
+ * chore(engine): add logs for task analysis (#20507)
+ * ci: include profiles and build in LogQL Correctness tests (#20503)
+ * chore: typos in comments (#20481)
+ * chore: use services.BasicService in partition_processor.go (#20448)
+ * chore(dataobj): reduce pageReader allocations (#20496)
+ * feat(series): implement AtST (#20495)
+ * feat(deletes): support time range filtering for listing deletes (#20427)
+ * chore(planner): add filter stages to drop lines matching delete requests (#20395)
+ * fix(operator): Increase distributor-ingester timeout from 1s to 5s (#20471)
+ * chore(columnar): add experimental columnar package for pkg/dataobj (#20478)
+ * chore(dataobj): optimize bitmap decoder (#20467)
+ * feat: Query tee forwards all headers (#20468)
+ * fix: prevent Dequeue from returning nil request without error (#20477)
+ * fix: enforce maxRecvMsgSize and maxCompressedMsgSize for OTLP (#20312)
+ * feat: create separate flusher to support parallel flushes (#20446)
+ * fix(deps): update module golang.org/x/tools to v0.41.0 (main) (#20461)
+ * chore(deps): update terraform google to v7.16.0 (main) (#20472)
+ * fix(deps): update module github.com/baidubce/bce-sdk-go to v0.9.257 (main) (#20470)
+ * chore(deps): update terraform random to v3.8.0 (main) (#20476)
+ * chore(engine): fix regex simplification when there is >1 regex (#20474)
+ * ci: build query-tee with weeklies (#20458)
+ * feat(query-tee): add v2 preferred routing (#20404)
+ * chore(memory): move subpackages into memory package (#20469)
+ * fix(deps): update module github.com/hashicorp/consul/api to v1.33.2 (main) (#20454)
+ * fix(deps): update module github.com/prometheus/alertmanager to v0.30.1 (main) (#20460)
+ * fix(deps): update module golang.org/x/net to v0.49.0 (main) (#20457)
+ * chore(deps): update prom/alertmanager docker tag to v0.30.1 (main) (#20459)
+ * feat(helm): Add health probes to write (#20087)
+ * feat(helm): Add health probes to ruler (#20085)
+ * feat(helm): Add startupProbe to table-manager (#20084)
+ * feat(helm): Add startupProbe to query-scheduler (#20083)
+ * feat(helm): Add health probes to query-frontend (#20082)
+ * feat(helm): Add startupProbe to querier (#20081)
+ * feat(helm): Add health probes to pattern-ingester (#20080)
+ * feat(helm): Add health probes to loki-canary (#20079)
+ * chore(helm): Fix typos in comments for health probes (#20078)
+ * feat: add rules check for namespace and group (#20437)
+ * feat(helm): Add startupProbe to ingester (#20076)
+ * feat(helm): Add startupProbe to index-gateway (#20075)
+ * feat(helm): Add health probes to enterprise-gateway (#20074)
+ * feat(helm): Add startupProbe to compactor (#20072)
+ * feat(query-tee): ability to define both a v1 and v2 preferred backend (#20391)
+ * fix: use heap semantics for push in priority queue (#20453)
+ * perf: Optimize delta decoder (#20451)
+ * feat(helm): Add startupProbe to distributor (#20073)
+ * fix(helm): Fix rendering of dnsConfig for backend, read, write, single-binary and table-manager (#20013)
+ * chore(dataobj): optimize plain value decoder (#20441)
+ * fix(deps): update module github.com/minio/minio-go/v7 to v7.0.98 (main) (#20436)
+ * fix(deps): update module github.com/sirupsen/logrus to v1.9.4 (main) (#20447)
+ * chore(engine): add hierarchical fair priority queues to v2 engine scheduler (#20405)
+ * feat: add support for cancelation to copy and sort (#20370)
+ * docs: Troubleshooting queries Part 5 (#20243)
+ * docs: Remove Note (#20438)
+ * docs: troubleshooting ingest Part 4 (#20416)
+ * docs: troubleshooting ingest Part 3 (redux) (#20432)
+ * chore(dataobj): add benchmarks for plain decoder (#20423)
+ * chore(memory): introduce experimental memory package for use with pkg/dataobj (#20422)
+ * docs: troubleshooting ingest Part 2 (redux) (#20424)
+ * fix(deps): update module github.com/prometheus/prometheus to v0.309.1 (main) (#20388)
+ * fix(deps): update module go.opentelemetry.io/contrib/instrumentation/net/http/httptrace/otelhttptrace to v0.64.0 (main) (#20373)
+ * fix(deps): update module github.com/parquet-go/parquet-go to v0.27.0 (main) (#20426)
+ * chore: Add benchmarks for delta decoder (#20419)
+ * fix: Evaluation time in Goldfish query comparator (#20425)
+ * docs: troubleshooting ingest Part 2 (#20414)
+ * fix(deps): update module go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc to v0.64.0 (main) (#20372)
+ * fix(deps): update module github.com/bmatcuk/doublestar/v4 to v4.9.2 (main) (#20418)
+ * fix(deps): update module github.com/aws/aws-sdk-go-v2/service/s3 to v1.95.1 (main) (#20406)
+ * docs: Add ingestion troubleshooting topic (#20092)
+ * fix(deps): update module github.com/prometheus/sigv4 to v0.4.0 (main) (#20386)
+ * fix(deps): update module go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp to v0.64.0 (main) (#20374)
+ * fix(deps): update module github.com/google/renameio/v2 to v2.0.2 (main) (#20411)
+ * fix(deps): update module github.com/alecthomas/chroma/v2 to v2.22.0 (main) (#20409)
+ * fix(deps): update module golang.org/x/text to v0.33.0 (main) (#20408)
+ * fix(deps): update module cloud.google.com/go/storage to v1.59.0 (main) (#20407)
+ * fix(deps): update module github.com/aws/aws-sdk-go-v2/config to v1.32.7 (main) (#20401)
+ * fix(deps): update module github.com/aws/aws-sdk-go-v2/service/dynamodb to v1.53.6 (main) (#20403)
+ * chore(dataset): bench for bitmapDecoder (#20410)
+ * feat: add metric to track flush failures (#20399)
+ * feat: don't tee unsampled queries (#20306)
+ * fix: Out of bounds error fix for gapped window matcher (#20396)
+ * fix(deps): update module go.opentelemetry.io/collector/pdata to v1.49.0 (main) (#20371)
+ * fix(deps): update module go.opentelemetry.io/otel/sdk to v1.39.0 (main) (#20376)
+ * fix(deps): update module k8s.io/apimachinery to v0.35.0 (main) (#20381)
+ * chore(deps): update terraform google to v7.15.0 (main) (#20390)
+ * fix(deps): update module github.com/aws/aws-sdk-go-v2/credentials to v1.19.7 (main) (#20402)
+ * feat: Add new dataobj builder flush criteria (#20323)
+ * docs: Update version numbers (#20397)
+ * fix(deps): update module github.com/prometheus/common to v0.67.5 (main) (#20363)
+ * fix(deps): update module golang.org/x/sys to v0.40.0 (main) (#20378)
+ * fix(deps): update module github.com/influxdata/telegraf to v1.37.0 (main) (#20356)
+ * chore(deps): update prom/prometheus docker tag to v3.9.1 (main) (#20389)
+ * fix(deps): update module github.com/aws/aws-sdk-go-v2/config to v1.32.6 (main) (#20338)
+ * chore(deps): update terraform aws to ~> 6.28.0 (main) (#20392)
+ * feat: disambiguate metadata for better scans (#20245)
+ * chore(engine): bypass regex simplfiication for stream selectors (#20387)
+ * chore: remove unregister metrics (#20385)
+ * fix: deadlock on shutdown (#20384)
+ * feat: remove final flush (#20360)
+ * feat: decouple dataobj consumers from the reader service (#20315)
+ * fix(deps): update module github.com/axiomhq/hyperloglog to v0.2.6 (main) (#20341)
+ * fix(deps): update module github.com/sony/gobreaker/v2 to v2.4.0 (main) (#20366)
+ * fix(deps): update module github.com/schollz/progressbar/v3 to v3.19.0 (main) (#20365)
+ * fix(deps): update module github.com/ibm/ibm-cos-sdk-go to v1.13.0 (main) (#20364)
+ * fix(deps): update module github.com/prometheus/prometheus to v0.308.1 (main) (#20346)
+ * fix(deps): update module github.com/parquet-go/parquet-go to v0.26.4 (main) (#20344)
+ * fix(deps): update module github.com/aws/aws-sdk-go-v2/service/dynamodb to v1.53.5 (main) (#20340)
+ * fix(deps): update module github.com/aws/aws-sdk-go-v2/credentials to v1.19.6 (main) (#20339)
+ * fix(helm): Respect global registry in sidecar image (#18246) (#19347)
+ * chore(deps): update opentracing-contrib/go-stdlib (#20361)
+ * chore(deps): update helm release rollout-operator to v0.40.0 (main) (#20192)
+ * chore(deps): update terraform aws to ~> 6.27.0 (main) (#20351)
+ * chore(deps): update memcached docker tag to v1.6.40 (main) (#20335)
+ * fix(deps): update module github.com/apache/arrow-go/v18 to v18.5.0 (main) (#20354)
+ * fix(deps): update module google.golang.org/protobuf to v1.36.11 (main) (#20349)
+ * fix(deps): update module github.com/alecthomas/chroma/v2 to v2.21.1 (main) (#20353)
+ * fix(deps): update module github.com/grafana/loki/v3 to v3.6.3 (main) (#20343)
+ * chore(deps): update prom/prometheus docker tag to v3.8.1 (main) (#20336)
+ * fix(deps): update module github.com/shirou/gopsutil/v4 to v4.25.12 (main) (#20347)
+ * fix(deps): update module github.com/twmb/franz-go to v1.20.6 (main) (#20348)
+ * chore(deps): update ruby docker tag to v3.4.8 (main) (#20337)
+ * fix(deps): update module github.com/baidubce/bce-sdk-go to v0.9.256 (main) (#20342)
+ * fix(deps): update module cloud.google.com/go/bigtable to v1.41.0 (main) (#20352)
+ * chore(deps): update prom/alertmanager docker tag to v0.30.0 (main) (#20350)
+ * fix(deps): update module github.com/aws/aws-sdk-go-v2/service/s3 to v1.95.0 (main) (#20355)
+ * fix(deps): update module github.com/oschwald/geoip2-golang/v2 to v2.1.0 (main) (#20357)
+ * fix(deps): update module github.com/prometheus/alertmanager to v0.30.0 (main) (#20358)
+ * feat(engine): add regexp parser support for log queries (#20286)
+ * chore(deps): update grafana/grafana docker tag to v12.3.1 (main) (#20331)
+ * chore(deps): update logstash docker tag to v9.2.3 (main) (#20333)
+ * chore(deps): update fluent/fluent-bit docker tag to v4.2.2 (main) (#20330)
+ * chore(deps): update alpine docker tag to v3.23.2 (main) (#20148)
+ * chore(deps): update grafana/loki-build-image docker tag to v0.34.9 (main) (#20332)
+ * chore(deps): Add explicit branchConcurrentLimit (#20327)
+ * docs: chunk and result cache should be StatefulSet instead of DaemonSet (#20278)
+ * chore(deps): Move to unlimited PRs for renovate (#20324)
+ * chore: Improving memory allocations for new query engine (#20321)
+ * fix: track discarded entries and bytes when hitting stream limits using the ingest limits service (#20244)
+ * chore(engine): add support for simplifying regular expressions (#20297)
+ * docs: Troubleshooting queries Part 4 (#20242)
+ * docs: remove references to Grafana Agent (#20309)
+ * feat: add histogram loki_dataobj_consumer_flush_duration_seconds (#20304)
+ * feat: dataobj-consumer add processed bytes metric (#20303)
+ * feat: add loki health command (#20313)
+ * chore: remove use of namespace/subsystem in builder metrics (#20301)
+ * chore: move appends total metric into builder (#20300)
+ * docs: Update RN for 3.5.9 (#20308)
+ * docs: Update broken link in README.md (#20307)
+ * chore(engine): log number of tasks in execution plan (workflow) (#20305)
+ * chore(xcap): track task queue & admission duration (#20298)
+ * chore: tweaks for feature parity (#19940)
+ * docs: fix typo in HS Compactor page (#20295)
+ * chore: Upgrade golang version to 1.25.5 (#20290)
+ * feat(canary): Support passing arbitrary set of labels to use for the query (#17008)
+ * docs: Troubleshooting queries Part 3 (#20241)
+ * feat(metastore): shard sections queries over index files (#20134)
+ * docs: Troubleshooting queries Part 2 (#20240)
+ * fix(helm): correct GEL provisioner tenant creation instructions (#20271)
+ * [feat] Add config option to override Azure AD endpoint (#20267)
+ * chore: update dskit to include LRU cache for partition ring shuffle sharding (#20270)
+ * chore: stream sink handle retryable errors (#20264)
+ * chore(scheduler): reduce lock contention during task assignment (#20254)
+ * fix: Scheduler memory leak (#20268)
+ * fix(helm): Apply fix from #14126 to example (#20252)
+ * docs: Troubleshooting query docs - Part 1 (#20182)
+ * feat(metastore): metastore DI (#20253)
+ * fix(operator): change leader-election parameters (#19707)
+ * feat(metastore): use arrow for scanning and blooms (#20234)
+ * docs: Update CHANGELOG for missing releases (#20263)
+ * docs: Update 2.9 RN for patches (#20259)
+ * chore: Aggregation groupings for by() and without() (#19928)
+ * docs: fix broken link (#20255)
+ * chore: graceful worker shutdown (#20136)
+ * fix(helm): Fix ingester-b volumeAttributesClassName templating (#20188)
+ * docs: Add AWS SDK upgrade to 3.6.0 upgrade docs (#20247)
+ * feat(lokitool): Add regex namespace filtering (#20209)
+ * feat(logcli): Allow custom headers to be passed (#20231)
+ * docs: rename file (#20248)
+ * feat(engine): delegate metastore queries to engine (#20189)
+ * feat(operator): add option to disable ingress (#19382)
+ * chore: use projection for indexobj streams reader (#20205)
+ * chore(engine)!: Share worker threads across all scheduler connections (#20229)
+ * feat: add race tolerance to query-tee (#20228)
+ * docs: update quick start to reflect simple scalable deployment mode (#20237)
+ * chore: use tenant instead of service_name for pattern_ingester_metric_samples (#20033)
+ * chore: release loki helm chart 6.49.0 (#20208)
+ * chore: release loki helm chart 6.49.0 (#20206)
+ * chore: add stream count to metrics.go for queriers (#20215)
+ * chore: compute stats summary in query engine scheduler (#20222)
+ * fix: bump helm deps, publish loki-helm-test w/ release (#19939)
+ * chore(engine): update how scheduler tracks readiness (#20225)
+ * fix(enginev2): Always compute summary when creating the stats object (#20224)
+ * feat: Handle state change lock in prepare downscale (#20141)
+ * chore(querytee): return valid staus code when req fails (#20220)
+ * chore: stop adding plans to span events (#20219)
+ * fix: use the default downstream handler for unsupported requests (#20202)
+ * chore(querier): fix engine router splitting logic (#20217)
+ * chore(engine): send structured errors over the wire (#20211)
+ * fix(deps): update module github.com/aws/aws-sdk-go-v2/service/s3 to v1.93.0 (main) (#20142)
+ * docs: Update RN for 3.6.3 patch (#20212)
+ * chore(engine): specify invalid time range (#20207)
+ * chore: better comments when end offset is zero (#20196)
+ * feat: add processed records metric (#20191)
+ * chore: add .zed to gitignore (#20199)
+ * chore: Dispatch tasks more frequently (#20195)
+ * chore(deps): update helm release rollout-operator to v0.38.2 (main) (#20062)
+ * fix(deps): update module k8s.io/apimachinery to v0.34.3 (main) (#20187)
+ * fix(deps): update module golang.org/x/oauth2 to v0.34.0 (main) (#20160)
+ * fix(deps): update module cloud.google.com/go/storage to v1.58.0 (main) (#20159)
+ * fix(deps): update module github.com/aws/aws-sdk-go-v2/config to v1.32.3 (main) (#20138)
+ * chore: revert change to shrink v2 split (#20190)
+ * fix: apply missing middlewares to query-tee (#20184)
+ * fix: persist correct goldfish result comparison in database (#20172)
+ * feat: add downscalePermittedFunc to check downscale is permitted (#20171)
+ * fix(deps): update module golang.org/x/sync to v0.19.0 (main) (#20161)
+ * ci: Remove Helm 4 verification and fix flaky ruler test (#20178)
+ * docs: Update storage.md (#20176)
+ * chore(querytee): add metric to track requests received (#20177)
+ * fix(deps): update module github.com/parquet-go/parquet-go to v0.26.0 (main) (#20170)
+ * chore(deps): update jaegertracing/all-in-one docker tag to v1.76.0 (main) (#20147)
+ * fix(deps): update module google.golang.org/api to v0.257.0 (main) (#20143)
+ * fix(deps): update module github.com/aws/aws-sdk-go-v2/service/dynamodb to v1.53.3 (main) (#20140)
+ * fix(deps): update module github.com/ibm/ibm-cos-sdk-go to v1.12.4 (main) (#20146)
+ * chore(deps): update terraform aws to ~> 6.25.0 (main) (#20151)
+ * chore(deps): update logstash docker tag to v9.2.2 (main) (#20152)
+ * fix(deps): update module golang.org/x/sys to v0.39.0 (main) (#20162)
+ * chore: xcap summary treat duration observation values as seconds (#20175)
+ * fix: compactor file descriptor leak (#20077)
+ * chore: improvements to v2 engine split range (#20174)
+ * feat: add gauge to track in-flight bytes (#20091)
+ * fix: remove logging of sensitive data (#20168)
+ * chore(querytee): fix recursive key in logger (#20167)
+ * chore: improve error logging/resp in querytee (#20165)
+ * feat: enable racing in the querytee (#20156)
+ * feat: implement query splitting in the query-tee (#20039)
+ * fix(deps): update module github.com/aws/aws-sdk-go-v2 to v1.40.1 (main) (#20137)
+ * fix(deps): update module github.com/prometheus/prometheus to v0.308.0 (main) (#20131)
+ * fix(deps): update module github.com/baidubce/bce-sdk-go to v0.9.253 (main) (#20125)
+ * chore(deps): update prom/prometheus docker tag to v3.8.0 (main) (#20130)
+ * chore: add shared vscode launch config (#20103)
+ * chore: revert dropping spans generated by gcs storage clients (#20133)
+ * chore: include execution stats in `finished executing` log line (#20132)
+ * chore: set Dataobj logql stats from xcap (#20126)
+ * fix: Do not override S3 region if already specified in configuration chain (#20127)
+ * feat: Client side index gateway shuffle sharding (#20124)
+ * chore: improve metrics.go stats logging to include bloom filter time as well as fix missing size info in query-frontend (#20093)
+ * chore(engine): adjustments to log task short circuiting (#20121)
+ * chore(operator): fix containerImage annotation in community csv (#20119)
+ * fix(deps): update module github.com/redis/go-redis/v9 to v9.17.2 (main) (#20116)
+ * fix(deps): update module go.opentelemetry.io/collector/pdata to v1.47.0 (main) (#20112)
+ * fix(deps): update module github.com/aws/smithy-go to v1.24.0 (main) (#20117)
+ * fix: Fix regression in S3 client configuration (#20110)
+ * chore( operator): community release 0.9.0 (#20089)
+ * fix(deps): update module github.com/aws/aws-sdk-go-v2/service/s3 to v1.92.1 (main) (#20061)
+ * fix(deps): update module github.com/klauspost/compress to v1.18.2 (main) (#20108)
+ * fix(deps): update module github.com/aws/aws-sdk-go-v2/config to v1.32.2 (main) (#20059)
+ * chore(operator): prepare community release v0.9.0 (#18369)
+ * chore(operator): fix workflow that validates if manifests have been updated before release (#20101)
+ * chore(xcap): adds exporter to summarise capture as a structured log line (#20099)
+ * chore: close stream section reader (#20107)
+ * chore: update read stats to use xcap (#20095)
+ * fix(goldfish): add tolerance check to mismatches in the query-tee (#20004)
+ * chore(xcap): support events, status and improve coverage (#20096)
+ * docs: Improve GCP deployment guide. (#20097)
+ * fix(enginev2): Close pipeline before building query results (#20100)
+ * chore(xcap): Adds wrapper around bucket client to track operations (#20094)
+ * fix(deps): update module github.com/shirou/gopsutil/v4 to v4.25.11 (main) (#20066)
+ * fix(deps): update module github.com/oschwald/geoip2-golang/v2 to v2.0.1 (main) (#20065)
+ * fix(deps): update module github.com/redis/go-redis/v9 to v9.17.1 (main) (#20063)
+ * fix(deps): update module github.com/aws/aws-sdk-go-v2/service/dynamodb to v1.53.2 (main) (#20060)
+ * fix(deps): update module github.com/grafana/loki/v3 to v3.6.2 (main) (#20057)
+ * fix(deps): update module github.com/xdg-go/scram to v1.2.0 (main) (#20046)
+ * fix(deps): update module github.com/twmb/franz-go to v1.20.5 (main) (#20038)
+ * fix(deps): update module github.com/aws/aws-sdk-go-v2/credentials to v1.19.2 (main) (#19980)
+ * chore(deps): update terraform aws to ~> 6.23.0 (main) (#20064)
+ * chore(metastore): add columnar indexpointers reader (#20068)
+ * fix: Respect categorizeLabels encoding flag in v2 queries (#20098)
+ * fix: Restrict start/end timestamp to requested range for scheduler (#20086)
+ * fix(operator): Return quickstart script to working condition and improve rootless usage (#19960)
+ * docs: Fix max_line_size default behavior comment (#20067)
+ * docs: Edit deployment modes SSD (#20058)
+ * chore(metastore): use column reader for blooms (#20053)
+ * chore: add stream count and result information to metrics.go (#20055)
+ * chore: expose native histogram for HTTP server metrics (#20056)
+ * chore: Define an E2E ingestion processing time metric (#20054)
+ * chore(metastore): add column reader for pointers section (#19992)
+ * chore: Split indexing into distinct steps (#19987)
+ * chore: Use shared zstd encoders during dataobj build (#20044)
+ * chore(dataobj): Use common base config for indexobj and logsobj builders (#20037)
+ * chore(engine): Clean up query engine configuration (#20049)
+ * chore(engine): add query tags into new engine logs (#20048)
+ * chore: allow dropping spans generated by gcs storage clients (#20040)
+ * chore(dataobj): stop preallocating memory for page builders (#20043)
+ * chore(scheduler): extract trace info from orig query context (#20041)
+ * fix(querytee): forward response headers from backends (#20036)
+ * docs: Fix YAML indentation in S3 Object Store example for microservice Helm chart (#20029)
+ * chore: Short circuiting for new scheduler (#20000)
+ * feat: add prepare downscale handler (#20007)
+ * chore: clean up prepare downscale handler (#20006)
+ * fix: revoke partitions if lost (#20030)
+ * docs: Update RN 3.6.2 (#20024)
+ * chore: Update renovate to scan Loki 3.6 (#20018)
+ * docs: Sm update to Labels (#20012)
+ * docs: document breaking change (#20001)
+ * chore(deps): Update etcd version (#20015)
+ * chore(build): Bump the version of actions/download-artifact (#20011)
+ * fix(promtail): validate relabel config (#19996)
+ * chore: compat should also handles metadata collisions (#20005)
+ * fix(deps): update module github.com/aws/aws-sdk-go-v2/config to v1.32.1 (main) (#20002)
+ * chore(deps): update terraform aws to ~> 6.22.0 (main) (#20003)
+ * fix!: parsed labels should not override structured metadata (#19991)
+ * fix(deps): update module github.com/aws/aws-sdk-go-v2/service/s3 to v1.92.0 (main) (#19982)
+ * fix(deps): update module github.com/grafana/loki/v3 to v3.6.1 (main) (#19993)
+ * fix(deps): update module github.com/prometheus/common to v0.67.4 (main) (#19994)
+ * fix(deps): update module github.com/aws/aws-sdk-go-v2/service/dynamodb to v1.53.1 (main) (#19981)
+ * fix(deps): update module github.com/ibm/go-sdk-core/v5 to v5.21.2 (main) (#19988)
+ * fix: panic when no healthy instances found (#19998)
+ * fix(deps): update module go.opentelemetry.io/collector/pdata to v1.46.0 (main) (#19802)
+ * fix(deps): update module google.golang.org/grpc to v1.77.0 (main) (#19945)
+ * fix(dataobj): Flush into multiple index objects when ErrBuilderFull (#19223)
+ * feat: shuffle shard on tenant rate limit (#19990)
+ * fix(deps): update module github.com/aws/aws-sdk-go-v2/config to v1.32.0 (main) (#19979)
+ * fix(parser): do not cache key conflicts results in intern set (#19984)
+ * fix(helm): do not mark loki.storage.bucketNames.ruler as required, if rulerConfig.storage.type is local (#19882)
+ * fix(deps): update module github.com/redis/go-redis/v9 to v9.17.0 (main) (#19977)
+ * fix(deps): update module github.com/baidubce/bce-sdk-go to v0.9.252 (main) (#19972)
+ * chore(deps): update jaegertracing/all-in-one docker tag to v1.75.0 (main) (#19976)
+ * chore(deps): update terraform google to v7.12.0 (main) (#19969)
+ * chore(deps): update grafana/grafana docker tag to v12.3.0 (main) (#19974)
+ * docs: Release Notes 3.6.1 (#19970)
+ * docs: document the json pattern tokenizable field limits (#19964)
+ * docs: fix typo in Amazon S3 name (#19905)
+ * chore: Use flag to set index consumer group (#19965)
+ * fix: avoid recalculating the segmentation key hash twice (#19961)
+ * chore(docs): Fix link to helm chart values.yaml (#19959)
+ * feat: write to dataobj partitions based on segmentation key (#19946)
+ * chore(xcap): remove duplicate proto file (#19955)
+ * chore(dataobj-inspect): decouple deps (#19956)
+ * chore: correct query_tags in blocking queries section (#19954)
+ * fix(deps): update module github.com/ibm/go-sdk-core/v5 to v5.21.1 (main) (#19950)
+ * fix(deps): update module github.com/grafana/loki/v3 to v3.6.0 (main) (#19943)
+ * chore: fix test name I messed up with find and replace (#19951)
+ * feat: add segmentation keys and resolver (#19927)
+ * fix(docker): set WORKDIR to root in loki Dockerfiles (#19941)
+ * fix(docker): missing permissions to start docker (#19947)
+ * fix(helm): do not mark loki.storage.bucketNames.chunks as required, if an s3 url is provided (#19873)
+ * fix(deps): update module github.com/influxdata/telegraf to v1.36.4 (main) (#19938)
+ * fix(deps): update module github.com/google/renameio/v2 to v2.0.1 (main) (#19935)
+ * chore(engine): use github.com/grafana/dskit/dns for scheduler discovery (#19835)
+ * chore(xcap): export captures as traces (#19880)
+ * fix(helm): do not mark loki.storage.bucketNames.chunks as required, if minio is used. (#19871)
+ * feat: ability to send query context for limit enforcement (#19900)
+ * fix(helm): Enable volumeAttributesClassName attributes for volumeClaimTemplates (#19719)
+ * feat: Add partition state to consumption lag metric (#19912)
+ * chore: Reduce buffer size for bloom lookups (#19926)
+ * feat: add support for UpdateRates RPC to distributors (#19918)
+ * chore(engine): report saturation as load when there are no workers (#19925)
+ * fix(helm): Don't fail for missing bucket name, if minio is enabled. (#19745)
+ * chore: implement UpdateRates with simple in-memory tracker (#19907)
+ * chore(engine): track scheduler load/pressure metrics (#19924)
+ * chore(engine): add base set of new scheduler metrics (#19913)
+ * fix(helm): Add startup probe read (#19708)
+ * chore: Add a dataobj readme (#19910)
+ * feat(helm): allow configuration of service trafficDistribution parameter (#19558)
+ * fix(ruler): validate remote write config (#19920)
+ * chore(engine): introduce execution capture (#19821)
+ * chore: abstract failover to withRandomShuffle (#19915)
+ * fix(deps): update module github.com/prometheus/common to v0.67.3 (main) (#19906)
+ * feat: Enable support for max, min, max_over_time, min_over_time for new engine (#19841)
+ * fix(deps): update module golang.org/x/net to v0.47.0 (main) (#19850)
+ * fix(deps): update module github.com/twmb/franz-go to v1.20.4 (main) (#19902)
+ * feat: Add UpdateRates RPC, update rates from the frontend, return no-op in the service (#19894)
+ * chore: add context.Context to Tee interface (#19898)
+ * chore(metastore): Cleanup and reduce log volume (#19889)
+ * fix(retry): do not retry if any of multierrors is a client error (#19887)
+ * chore: Add tools/dev/kafka/data to .dockerignore (#19897)
+ * feat(helm): use fsGroupChangePolicy=OnRootMismatch to speed up pod starts (#13942)
+ * docs: Loki 3.6 Release Notes (#19714)
+ * fix(server): return status bad request code for interval limit error (#19895)
+ * fix(querylimits): accept request limits over not initialized limits (#19891)
+ * fix(deps): update module github.com/aws/aws-sdk-go-v2/service/s3 to v1.90.2 (main) (#19847)
+ * fix(deps): update module github.com/aws/aws-sdk-go-v2/config to v1.31.20 (main) (#19879)
+ * fix(deps): update module cloud.google.com/go/storage to v1.57.2 (main) (#19893)
+ * feat(ui): proxy analyze-labels to series with org id (#19862)
+ * fix(deps): update module google.golang.org/api to v0.256.0 (main) (#19852)
+ * chore(deps): update terraform google to v7.11.0 (main) (#19849)
+ * fix(deps): update module golang.org/x/crypto to v0.44.0 (main) (#19776)
+ * chore(deps): update logstash docker tag to v9.2.1 (main) (#19843)
+ * chore: add allZones which returns a sorted iterator over zones (#19888)
+ * chore(deps): update terraform aws to ~> 6.21.0 (main) (#19881)
+ * chore(deps): update fluent/fluent-bit (main) (#19848)
+ * fix(deps): update module github.com/aws/aws-sdk-go-v2/service/dynamodb to v1.52.6 (main) (#19846)
+ * fix(deps): update module github.com/aws/aws-sdk-go-v2/credentials to v1.18.24 (main) (#19845)
+ * chore(metastore): Simplify public API of Metastore (#19886)
+ * fix: reduce FetchMaxBytes to 10MB (#19883)
+ * feat: check partition state in parallel (#19884)
+ * chore: panic if we consume too many topics (#19885)
+ * fix: Set Content-Type header for JSON responses in serializeHTTPHandler (#19878)
+ * fix(querier): Support multi-tenant queries in Patterns API (#19809)
+ * ci: pin helm version (#19860)
+ * chore(engine)!: Make scheduler aware of total compute capacity (#19876)
+ * chore: quality-of-life improvement to protobuf generation (#19875)
+ * refactor(engine): update workflow to register all tasks/streams at once (#19859)
+ * fix(deps): update module golang.org/x/text to v0.31.0 (main) (#19851)
+ * fix(cd): add loki-image to needs (#19870)
+ * chore(cd): trigger deployment after images are published (#19869)
+ * fix(deps): update module github.com/aws/aws-sdk-go-v2/config to v1.31.18 (main) (#19844)
+ * docs: add upgrade notes for 3.5.x (#19865)
+ * chore(ci): Run correctness test with local and remote transport (#19864)
+ * chore: Run benchmarks locally with remote transport enabled (#19855)
+ * chore(engine): Do not embed `types.Literal` interface in logical and physical Literal (#19858)
+ * fix: logging and failed migrations in query-tee (#19861)
+ * fix(operator): Do not deploy NetworkPolicies automatically on OCP 4.20 (#19680)
+ * fix(deps): update module k8s.io/apimachinery to v0.34.2 (main) (#19793)
+ * chore(engine): Fix conversion from logical to physical Literal in math expressions (#19853)
+ * feat: randomly distribute requests to the ingest-limits frontend (#19840)
+ * fix(deps): update module github.com/influxdata/telegraf to v1.36.3 (main) (#19796)
+ * chore(engine): make stream/task debug logging configurable (#19842)
+ * chore(scheduler): send tracing context to workers (#19839)
+ * fix(deps): update module github.com/redis/go-redis/v9 to v9.16.0 (main) (#19819)
+ * refactor(ingestor): WAL Replay controller: Use singleflight to ensure only one inflight flush is happening (#19831)
+ * fix(deps): update module github.com/prometheus/prometheus to v0.307.3 (main) (#19800)
+ * chore(engine): Fix calculation of v2 engine range in middleware (#19830)
+ * fix(engine): unset write and read deadlines for wire listeners (#19828)
+ * chore(engine): remove reference to internal type in exported function (#19829)
+ * feat: Add resolved policy to blocked and enforced label error (#19826)
+ * feat: Add support for storing chunk deletion markers in object storage instead of local disk (#19689)
+ * chore: Fix storage CLI arguments for Goldfish UI (#19823)
+ * fix(deps): update module github.com/prometheus/sigv4 to v0.3.0 (main) (#19801)
+ * fix(deps): update module github.com/hashicorp/consul/api to v1.33.0 (main) (#19788)
+ * chore: bump nix go to 1.25.4 (#19817)
+ * fix(deps): update module github.com/prometheus/alertmanager to v0.29.0 (main) (#19797)
+ * chore(engine): query new schedulers over HTTP from query-frontend (#19744)
+ * fix(deps): update module github.com/tjhop/slog-gokit to v0.1.5 (main) (#19808)
+ * chore(build): Extend from grafana-renovate-config (#19815)
+ * fix(deps): update module github.com/prometheus/client_golang to v1.23.2 (main) (#19763)
+ * fix(deps): update module github.com/twmb/franz-go to v1.20.3 (main) (#19812)
+ * chore(deps): update terraform aws to ~> 6.20.0 (main) (#19810)
+ * fix(deps): update dataobj-inspect transitive deps version (#19813)
+ * fix(deps): update module github.com/gocql/gocql to v2 (main) (#19794)
+ * fix(deps): update module github.com/apache/arrow-go/v18 to v18.4.1 (main) (#19750)
+ * fix(deps): update module github.com/oschwald/geoip2-golang to v2 (main) (#19799)
+ * fix(deps): update module github.com/twmb/franz-go/pkg/kadm to v1.17.1 (main) (#19790)
+ * fix(deps): update module cloud.google.com/go/pubsub to v2 (main) (#19803)
+ * fix(deps): update module google.golang.org/api to v0.255.0 (main) (#19792)
+ * fix(deps): update module github.com/aws/aws-sdk-go-v2/service/s3 to v1.90.0 (main) (#19785)
+ * fix(deps): update module github.com/twmb/franz-go to v1.20.2 (main) (#19789)
+ * fix(deps): update module golang.org/x/sync to v0.18.0 (main) (#19779)
+ * fix(deps): update module github.com/aws/aws-sdk-go-v2/config to v1.31.17 (main) (#19773)
+ * chore(deps): update logstash docker tag to v9.2.0 (main) (#19795)
+ * fix(deps): update module github.com/coder/quartz to v0.3.0 (main) (#19786)
+ * fix(deps): update module github.com/twmb/franz-go/pkg/kmsg to v1.12.0 (main) (#19791)
+ * fix(deps): update module golang.org/x/net to v0.46.0 (main) (#19777)
+ * fix(deps): update module golang.org/x/sys to v0.38.0 (main) (#19780)
+ * fix(deps): update module github.com/aws/aws-sdk-go-v2/service/dynamodb to v1.52.4 (main) (#19774)
+ * fix(deps): update module golang.org/x/oauth2 to v0.33.0 (main) (#19778)
+ * fix(deps): update module github.com/ibm/sarama to v1.46.3 (main) (#19760)
+ * fix(deps): update module github.com/aws/aws-sdk-go-v2/credentials to v1.18.21 (main) (#19752)
+ * fix(deps): update module github.com/grpc-ecosystem/go-grpc-middleware/v2 to v2.3.3 (main) (#19758)
+ * chore(deps): update helm release grafana-agent-operator to v0.5.2 (main) (#19748)
+ * chore(deps): update prom/prometheus docker tag to v3.7.3 (main) (#19770)
+ * chore(deps): update terraform aws to ~> 6.19.0 (main) (#19771)
+ * chore(deps): update terraform google to v7.10.0 (main) (#19772)
+ * fix(deps): update module github.com/aws/aws-sdk-go-v2/service/s3 to v1.89.2 (main) (#19775)
+ * fix(deps): update module golang.org/x/text to v0.30.0 (main) (#19781)
+ * fix(deps): update module golang.org/x/time to v0.14.0 (main) (#19782)
+ * chore(deps): update ruby docker tag to v3.4.7 (main) (#19768)
+ * fix(deps): update module github.com/baidubce/bce-sdk-go to v0.9.251 (main) (#19754)
+ * chore(deps): update grafana/grafana docker tag to v12.2.1 (main) (#19747)
+ * chore(deps): update helm release rollout-operator to v0.37.1 (main) (#19767)
+ * fix(deps): update module github.com/docker/docker to v28.5.2+incompatible (main) (#19756)
+ * fix(deps): update module github.com/bits-and-blooms/bloom/v3 to v3.7.1 (main) (#19755)
+ * fix(deps): update module cloud.google.com/go/storage to v1.57.1 (main) (#19749)
+ * fix(deps): update module github.com/aws/aws-sdk-go-v2 to v1.39.6 (main) (#19751)
+ * fix(deps): update module github.com/aws/smithy-go to v1.23.2 (main) (#19753)
+ * fix(deps): update module github.com/klauspost/compress to v1.18.1 (main) (#19761)
+ * chore(deps): update prom/alertmanager docker tag to v0.29.0 (main) (#19769)
+ * fix(deps): update module github.com/grafana/loki/v3 to v3.5.8 (main) (#19757)
+ * fix(deps): update module github.com/minio/minio-go/v7 to v7.0.97 (main) (#19762)
+ * fix(deps): update module github.com/ncw/swift/v2 to v2.0.5 (main) (#19764)
+ * fix(deps): update module github.com/workiva/go-datastructures to v1.1.7 (main) (#19766)
+ * fix(deps): update module github.com/shirou/gopsutil/v4 to v4.25.10 (main) (#19765)
+ * chore(deps): update alpine docker tag to v3.22.2 (main) (#19739)
+ * chore(deps): update fluent/fluent-bit docker tag to v4.1.1 (main) (#19742)
+ * chore(deps): update dependency fluentd to v1.19.1 (main) (#19740)
+ * fix: Nomad simple example (#19629)
+ * chore(deps): Restore old prConcurrentLimit now that branches and PRs are cleaned up (#19734)
+ * fix(deps): update module cloud.google.com/go/pubsub to v1.50.1 (main) (#18624)
+ * fix(deps): update module github.com/leodido/go-syslog/v4 to v4.3.0 (main) (#19416)
+ * fix(deps): update module google.golang.org/grpc to v1.76.0 (main) (#19422)
+ * fix(deps): update module github.com/aws/aws-sdk-go-v2/service/s3 to v1.88.4 (main) (#19341)
+ * chore(deps): Remove loki 3.4 from renovate (#19733)
+ * chore: scheduler tasks are aware of their time range (#19709)
+ * chore(engine): determine proper advertise address for scheduler (#19731)
+ * fix(config): migrate renovate config (#19436)
+ * chore(engine): propagate worker listen address to scheduler (#19730)
+ * chore: Wire up new scheduler and worker components (#19728)
+ * fix: Empty keys are returned if desired in v2 engine (#19717)
+ * chore: rename the prepare delayed downscale handler to better communicate what it does (#19727)
+ * chore(engine): Add HTTP/2 transport for wire protocol (#19575)
+ * chore: bump go.mod to use Go 1.25 (#19723)
+ * fix: expose RDS args for goldfish ui (#19724)
+ * chore(deps): update module github.com/containerd/containerd/v2 to v2.0.7 [security] (main) (#19721)
+ * chore: remove loki_dataobj_consumer_processing_delay histogram (#19718)
+ * chore: explicitly set ingester.lifecycler.id in kafka local dev config (#19716)
+ * chore: Admission lanes for workflow tasks (#19584)
+ * chore: remove limit physical plan node (#19682)
+ * chore(release-3.5.x): release 3.5.8 (backport main) (#19710)
+ * feat(goldfish): mv comparison_status to db, add stats endpoint (#19698)
+ * docs: 3.5.8 Release Notes (#19712)
+ * chore(dataobj-consumer): Re-use builder for CopyAndSort() (#19696)
+ * feat(engine): implement strict and keepEmpty logfmt parsing (#19668)
+ * chore(engine): registers functions for logical op (#19704)
+ * chore: bump Go to 1.24.9 (#19705)
+ * chore: release loki helm chart 6.46.0 (#19688)
+ * feat(helm): allow set topologySpreadConstraints on singleBinary (#19534)
+ * chore(engine): add periodic discovery of remote schedulers (#19695)
+ * chore: Ensure partition is set on partition-processor (#19693)
+ * feat(helm): `nameOverride` now passed through helm tpl function. (#19590)
+ * fix(helm): Don't fail for missing bucket name, if local disk is used. (#19675)
+ * feat(helm): make loki-canary readinessProbe configurable via values.yaml (#19328)
+ * feat(helm): Add ability to toggle grpclb port for query frontend service (#19609)
+ * chore: increase min-occurrences to 5 (#19691)
+ * chore(topk): improvements to reduce alloc bytes and alloc space (#19660)
+ * chore: remove debug logging from HTTP endpoint (#19690)
+ * chore: use seq.Iter for iterating stream usage (#17957)
+ * ci: make dist job run on self-hosted runner (#19681)
+ * chore(operator): Fix file not found error during website build (#19674)
+ * fix(lokitool): Update ruler path and enable alternative TLS env variables (#19572)
+ * fix: loki_dataobj_sort_duration_seconds never registered (#19679)
+ * chore(engine): serializable physical plans (#19672)
+ * chore: log when limits pod loses a partition (#19676)
+ * docs: Add docs for config self-serve API (#19656)
+ * fix(helm): update version (#19670)
+ * feat(goldfish): add endpoints for serving stored results (#19640)
+ * fix(helm): Update Chart version in README.md (#19669)
+ * fix(helm): Correct GEL version (#19657)
+ * fix: errors in parse pipeline (#19667)
+ * chore: track time spent waiting for data from ingesters (#19648)
+ * chore: include stream information for GetShards round 2 (#19646)
+ * ci: run LogQL correctness tests on applicable PRs (#19663)
+ * chore(logql/bench): make engine logs opt in via flag (#19661)
+ * chore(logql/bench): set pprof labels on tests and benchmarks (#19659)
+ * chore(engine): expose new scheduler and worker (#19633)
+ * refactor: implment parse as a projection (#19579)
+ * fix(helm): Bump Loki chart version to 6.45.1 (#19654)
+ * chore: release loki helm chart 6.45.1 (#19622)
+ * chore: release loki helm chart 6.45.0 (#19615)
+ * docs: removing lambda-promtail docs (#19649)
+ * docs: Add pattern ingester to components (#19606)
+ * chore(engine): Remove unused physical plan visitor (#19647)
+ * feat(helm): add ability to specify index-gateway container lifecycle (#19573)
+ * docs: Update link to Tanka installation documentation (#19641)
+ * fix: Forward ingestion policy set through header on kafka (#19632)
+ * perf(engine): Improve regexp expression evaluation (#19644)
+ * feat(goldfish): Add support for query results in object storage (#19410)
+ * chore: improve querier stats (#19635)
+ * fix(ingester): Add WAL cleanup code (#19607)
+ * fix: Pass ingestion policy set through header to ingesters via grpc (#19630)
+ * feat(engine): rate() aggregate function (#19589)
+ * docs: Update TOC entry for unwanted queries (#19611)
+ * docs: Update variable formatting (#19610)
+ * docs: update note in labels topic (#19608)
+ * fix(helm): Wrong context passed to loki.namespace helper from table manager servicemonitor (#19544)
+ * fix(helm): Update default readiness probe values to match operator (#19529)
+ * chore(helm): remove unused and redundant field from compactor.persistance values.yaml (#19443)
+ * chore(engine): provide worker (#19588)
+ * fix: Sanitize logfmt keys in v2 engine (#19621)
+ * fix(wal): Move WAL disk check to platform-specific code (#19619)
+ * fix(helm): standardize global image registry to match other Grafana charts (#19246)
+ * feat(helm): Allow configurable severity and thresholds for alerts (#13730)
+ * feat: add enabled flag for dataobjs (#19613)
+ * chore: stream injector: propagate orig error (#19616)
+ * fix(helm): Move bucketName validations into the config helpers. (#19051)
+ * fix: do not validate limits service configuration if service is disabled (#19612)
+ * chore: table build fill all columns to max rows (#19614)
+ * feat: normalize detected_level by always downcasing it (#19026)
+ * chore: ensure proto codec registration (#19603)
+ * chore: Fix page skipping with empty predicates (#19602)
+ * docs: Update Loki version, add notes (#19599)
+ * chore(bench test): add tolerance for sample comparison (#19596)
+ * chore: Add debug tooling to compare Loki query output (#19587)
+ * docs: Update docker-compose installation to use alloy instead of promtail (#19594)
+ * feat: support per policy overriden stream limits on limits service (#19403)
+ * feat(engine): basic math expressions (#19407)
+ * chore: correct dataobj reader rows read return value (#19583)
+ * chore: refactor and fixes for optimiser (#19581)
+ * chore: extend query blocking capabilities (#19551)
+ * chore(engine): provide scheduler (#19570)
+ * feat: Resolve ingestion policy via a header (#19548)
+ * chore: Use first-wins semantics for duplicate fields in logfmt/json parsers (#19568)
+ * feat: consume single topics in dataobj-consumer using partition ring (#19186)
+ * chore(engine): Refactor `ColumnVector` (#19549)
+ * fix: correctly register allowed log level fields (#19261)
+ * chore: release loki helm chart 6.44.0 (#19555)
+ * chore(helm): bump loki version (#19578)
+ * fix: Get applied limits endpoint returns valid yaml/json representation for otlp_config (#19576)
+ * chore: Fix ordering when merging frontend responses (#19565)
+ * chore(engine): add wire package (#19560)
+ * chore: Use Kafka round-robin balancer for index-builder (#19574)
+ * chore(engine): Refactor streams result builder to use column-oriented processsing (#19505)
+ * chore: removed arrow-go allocators/retain/release (#19569)
+ * feat(ingester): Add WAL throttling for partition ingesters (#19538)
+ * chore: Fix metadata bloom check with multiple predicates (#19389)
+ * fix: exit querytee if tracing fails (#19562)
+ * chore(engine): add information for task updates (#19561)
+ * fix: Use default config when building s3 client (#19556)
+ * refactor: move allocator into execution Context (#19550)
+ * chore(engine): add workflow package (#19511)
+ * chore(deps): sync nested module dependencies and remove outdated segment-inspect (#19545)
+ * fix: LineFilterLabelFilter.String() regexp correct delimiters (#17129)
+ * chore(ci): Update golangci-lint to v2.5.0 (Go 1.25 build) (#19546)
+
+-------------------------------------------------------------------
Wed Mar 25 17:58:05 UTC 2026 - Marcus Rueckert <mrueckert@suse.de>
- Update to version 3.6.8:
--- loki.obsinfo.orig
+++ loki.obsinfo
@@ -1,4 +1,4 @@
name: loki
-version: 3.6.8
-mtime: 1774443743
-commit: 138c391fd0237b8bf1eb9ecf9eb14d8ce04727c5
+version: 3.7.1
+mtime: 1774557647
+commit: 2c8fff222bab6813374b973ae0eb49043d3ed14e
--- loki.spec.orig
+++ loki.spec
@@ -27,7 +27,7 @@
%global promtail_binaries promtail
Name: loki
-Version: 3.6.8
+Version: 3.7.1
Release: 0
Summary: Loki: like Prometheus, but for logs
License: Apache-2.0
@@ -116,43 +116,57 @@ export GOLDFLAGS="-X %{buildpkg}.Version
for i in %{loki_public_binaries} %{?loki_internal_binaries} ; do
go build -ldflags="$GOLDFLAGS" ./cmd/${i}
done
+%if %{with promtail}
CGO_ENABLED=1 go build -ldflags="$GOLDFLAGS" --tags=promtail_journal_enabled,netgo ./clients/cmd/promtail
+%endif
-#check
+%check
./lokitool version
-for i in %{loki_public_binaries} %{?loki_internal_binaries} %{promtail_binaries} ; do
+for i in %{loki_public_binaries} %{?loki_internal_binaries} ; do
if [ "x${i}" != "xlokitool" -a "x${i}" != "xlogql-analyzer" ] ; then
./${i} --version
fi
done
-%install
+%if %{with promtail}
+./promtail --version
+%endif
+%install
# Service files for Loki and promtail
install -Dm644 %{SOURCE1} %{buildroot}%{_unitdir}/loki.service
-install -Dm644 %{SOURCE2} %{buildroot}%{_unitdir}/promtail.service
install -Dm644 %{SOURCE5} %{buildroot}%{_unitdir}/loki@.service
-install -Dm644 %{SOURCE6} %{buildroot}%{_unitdir}/promtail@.service
install -Dm644 %{SOURCE7} %{buildroot}%{_unitdir}/loki.target
-install -Dm644 %{SOURCE8} %{buildroot}%{_unitdir}/promtail.target
install -Dm644 %{SOURCE3} %{buildroot}%{_fillupdir}/sysconfig.loki
-install -Dm644 %{SOURCE4} %{buildroot}%{_fillupdir}/sysconfig.promtail
install -dm755 %{buildroot}%{_sbindir}
ln -s %{_sbindir}/service %{buildroot}%{_sbindir}/rcloki
-ln -s %{_sbindir}/service %{buildroot}%{_sbindir}/rcpromtail
# Config files
install -Dm640 cmd/loki/loki-local-config.yaml \
%{buildroot}%{_sysconfdir}/loki/loki.yaml
+
+%if %{with promtail}
+install -Dm644 %{SOURCE4} %{buildroot}%{_fillupdir}/sysconfig.promtail
+ln -s %{_sbindir}/service %{buildroot}%{_sbindir}/rcpromtail
+
+install -Dm644 %{SOURCE2} %{buildroot}%{_unitdir}/promtail.service
+install -Dm644 %{SOURCE8} %{buildroot}%{_unitdir}/promtail.target
+install -Dm644 %{SOURCE6} %{buildroot}%{_unitdir}/promtail@.service
+
install -Dm640 clients/cmd/promtail/promtail-local-config.yaml \
%{buildroot}%{_sysconfdir}/loki/promtail.yaml
+%endif
# Binaries
-install -D -m 0755 -t %{buildroot}%{_bindir} %{loki_public_binaries} %{?loki_internal_binaries} %{promtail_binaries}
+install -D -m 0755 -t %{buildroot}%{_bindir} %{loki_public_binaries} %{?loki_internal_binaries}
+install -D -m 0750 -d %{buildroot}%{loki_datadir} %{buildroot}%{loki_logdir}
-install -D -m 0750 -d %{buildroot}%{promtail_datadir} %{buildroot}%{loki_datadir} %{buildroot}%{loki_logdir}
+%if %{with promtail}
+install -D -m 0755 -t %{buildroot}%{_bindir} %{promtail_binaries}
+install -D -m 0750 -d %{buildroot}%{promtail_datadir}
+%endif
%pre
%service_add_pre %{loki_services}
@@ -165,8 +179,13 @@ install -D -m 0750 -d %{buildroot}%{prom
%service_del_preun %{loki_services}
%postun
-%service_del_postun %{loki_services} %{promtail_services}
+%service_del_postun %{loki_services} \
+%if %{with promtail}
+%{promtail_services} \
+%endif
+%{nil}
+%if %{with promtail}
%pre -n promtail
%service_add_pre %{promtail_services}
@@ -179,6 +198,7 @@ install -D -m 0750 -d %{buildroot}%{prom
%postun -n promtail
%service_del_postun %{promtail_services}
+%endif
%files
%license LICENSE
@@ -196,6 +216,7 @@ install -D -m 0750 -d %{buildroot}%{prom
%dir %attr(-,loki,loki) %{loki_datadir}/
%dir %attr(-,loki,loki) %{loki_logdir}/
+%if %{with promtail}
%files -n promtail
%{_unitdir}/promtail.target
%{_unitdir}/promtail.service
@@ -206,6 +227,7 @@ install -D -m 0750 -d %{buildroot}%{prom
%config(noreplace) %{_sysconfdir}/loki/promtail.yaml
%{_sbindir}/rcpromtail
%dir %{promtail_datadir}/
+%endif
%files -n logcli
%license LICENSE
--- proper-data-directories.patch.orig
+++ proper-data-directories.patch
@@ -1,7 +1,7 @@
-Index: loki/cmd/loki/loki-local-config.yaml
-===================================================================
---- loki.orig/cmd/loki/loki-local-config.yaml
-+++ loki/cmd/loki/loki-local-config.yaml
+diff --git a/cmd/loki/loki-local-config.yaml b/cmd/loki/loki-local-config.yaml
+index c3b8052335..11de68cafa 100644
+--- a/cmd/loki/loki-local-config.yaml
++++ b/cmd/loki/loki-local-config.yaml
@@ -8,11 +8,11 @@ server:
common:
@@ -17,778 +17,447 @@ Index: loki/cmd/loki/loki-local-config.y
replication_factor: 1
ring:
kvstore:
-Index: loki/docs/sources/operations/storage/filesystem.md
-===================================================================
---- loki.orig/docs/sources/operations/storage/filesystem.md
-+++ loki/docs/sources/operations/storage/filesystem.md
-@@ -13,7 +13,7 @@ Very simply it stores all the objects (c
- ```yaml
- storage_config:
- filesystem:
-- directory: /tmp/loki/
-+ directory: /var/lib/loki/
- ```
+diff --git a/cmd/loki/loki-local-multi-tenant-config.yaml b/cmd/loki/loki-local-multi-tenant-config.yaml
+index 065a7a0ed7..c287d1abf5 100644
+--- a/cmd/loki/loki-local-multi-tenant-config.yaml
++++ b/cmd/loki/loki-local-multi-tenant-config.yaml
+@@ -9,11 +9,11 @@ server:
- A folder is created for every tenant all the chunks for one tenant are stored in that directory.
-Index: loki/clients/cmd/promtail/promtail-cloudflare.yaml
-===================================================================
---- loki.orig/clients/cmd/promtail/promtail-cloudflare.yaml
-+++ loki/clients/cmd/promtail/promtail-cloudflare.yaml
-@@ -3,7 +3,7 @@ server:
- grpc_listen_port: 0
-
- positions:
-- filename: /tmp/positions.yaml
-+ filename: /var/lib/promtail/positions.yaml
-
- clients:
- - url: http://localhost:3100/loki/api/v1/push
-Index: loki/clients/cmd/promtail/promtail-docker-config.yaml
-===================================================================
---- loki.orig/clients/cmd/promtail/promtail-docker-config.yaml
-+++ loki/clients/cmd/promtail/promtail-docker-config.yaml
-@@ -3,7 +3,7 @@ server:
- grpc_listen_port: 0
-
- positions:
-- filename: /tmp/positions.yaml
-+ filename: /var/lib/promtail/positions.yaml
-
- clients:
- - url: http://loki:3100/loki/api/v1/push
-Index: loki/clients/cmd/promtail/promtail-local-config.yaml
-===================================================================
---- loki.orig/clients/cmd/promtail/promtail-local-config.yaml
-+++ loki/clients/cmd/promtail/promtail-local-config.yaml
-@@ -3,7 +3,7 @@ server:
- grpc_listen_port: 0
-
- positions:
-- filename: /tmp/positions.yaml
-+ filename: /var/lib/promtail/positions.yaml
-
- clients:
- - url: http://localhost:3100/loki/api/v1/push
-Index: loki/clients/cmd/promtail/promtail-local-limit-config.yaml
-===================================================================
---- loki.orig/clients/cmd/promtail/promtail-local-limit-config.yaml
-+++ loki/clients/cmd/promtail/promtail-local-limit-config.yaml
-@@ -3,7 +3,7 @@ server:
- grpc_listen_port: 0
-
- positions:
-- filename: /tmp/positions.yaml
-+ filename: /var/lib/promtail/positions.yaml
-
- clients:
- - url: http://localhost:3100/loki/api/v1/push
-Index: loki/clients/cmd/promtail/promtail-local-pubsub-config.yaml
-===================================================================
---- loki.orig/clients/cmd/promtail/promtail-local-pubsub-config.yaml
-+++ loki/clients/cmd/promtail/promtail-local-pubsub-config.yaml
-@@ -3,7 +3,7 @@ server:
- grpc_listen_port: 0
-
- positions:
-- filename: /tmp/positions.yaml
-+ filename: /var/lib/promtail/positions.yaml
-
- clients:
- - url: http://localhost:3100/loki/api/v1/push
-Index: loki/operator/internal/manifests/internal/config/build_test.go
-===================================================================
---- loki.orig/operator/internal/manifests/internal/config/build_test.go
-+++ loki/operator/internal/manifests/internal/config/build_test.go
-@@ -40,7 +40,7 @@ common:
- instance_port: 9095
- compactor:
- compaction_interval: 2h
-- working_directory: /tmp/loki/compactor
-+ working_directory: /var/lib/loki/compactor
- frontend:
- tail_proxy_url: http://loki-querier-http-lokistack-dev.default.svc.cluster.local:3100
- compress_responses: true
-@@ -166,8 +166,8 @@ server:
- log_level: info
- storage_config:
- boltdb_shipper:
-- active_index_directory: /tmp/loki/index
-- cache_location: /tmp/loki/index_cache
-+ active_index_directory: /var/lib/loki/index
-+ cache_location: /var/lib/loki/index_cache
- cache_ttl: 24h
- resync_interval: 5m
- index_gateway_client:
-@@ -300,7 +300,7 @@ common:
- instance_port: 9095
- compactor:
- compaction_interval: 2h
-- working_directory: /tmp/loki/compactor
-+ working_directory: /var/lib/loki/compactor
- frontend:
- tail_proxy_url: http://loki-querier-http-lokistack-dev.default.svc.cluster.local:3100
- compress_responses: true
-@@ -426,8 +426,8 @@ server:
- log_level: info
- storage_config:
- boltdb_shipper:
-- active_index_directory: /tmp/loki/index
-- cache_location: /tmp/loki/index_cache
-+ active_index_directory: /var/lib/loki/index
-+ cache_location: /var/lib/loki/index_cache
- cache_ttl: 24h
- resync_interval: 5m
- index_gateway_client:
-@@ -728,7 +728,7 @@ common:
- instance_port: 9095
- compactor:
- compaction_interval: 2h
-- working_directory: /tmp/loki/compactor
-+ working_directory: /var/lib/loki/compactor
- frontend:
- tail_proxy_url: http://loki-querier-http-lokistack-dev.default.svc.cluster.local:3100
- compress_responses: true
-@@ -882,15 +882,15 @@ ruler:
- min_backoff: 30ms
- max_backoff: 100ms
- wal:
-- dir: /tmp/wal
-+ dir: /var/lib/loki/wal
- truncate_frequency: 60m
- min_age: 5m
- max_age: 4h
-- rule_path: /tmp/loki
-+ rule_path: /var/lib/loki
+ common:
+ instance_addr: 127.0.0.1
+- path_prefix: /tmp/loki
++ path_prefix: /var/lib/loki
storage:
- type: local
- local:
-- directory: /tmp/rules
-+ directory: /var/lib/loki/rules
+ filesystem:
+- chunks_directory: /tmp/loki/chunks
+- rules_directory: /tmp/loki/rules
++ chunks_directory: /var/lib/loki/chunks
++ rules_directory: /var/lib/loki/rules
+ replication_factor: 1
ring:
kvstore:
- store: memberlist
-@@ -908,8 +908,8 @@ server:
- log_level: info
- storage_config:
- boltdb_shipper:
-- active_index_directory: /tmp/loki/index
-- cache_location: /tmp/loki/index_cache
-+ active_index_directory: /var/lib/loki/index
-+ cache_location: /var/lib/loki/index_cache
- cache_ttl: 24h
- resync_interval: 5m
- index_gateway_client:
-@@ -979,7 +979,7 @@ overrides:
- },
- Ruler: Ruler{
- Enabled: true,
-- RulesStorageDirectory: "/tmp/rules",
-+ RulesStorageDirectory: "/var/lib/loki/rules",
- EvaluationInterval: "1m",
- PollInterval: "1m",
- AlertManager: &AlertManagerConfig{
-@@ -1088,7 +1088,7 @@ common:
- instance_port: 9095
- compactor:
- compaction_interval: 2h
-- working_directory: /tmp/loki/compactor
-+ working_directory: /var/lib/loki/compactor
- frontend:
- tail_proxy_url: http://loki-querier-http-lokistack-dev.default.svc.cluster.local:3100
- compress_responses: true
-@@ -1242,15 +1242,15 @@ ruler:
- min_backoff: 30ms
- max_backoff: 100ms
- wal:
-- dir: /tmp/wal
-+ dir: /var/lib/loki/wal
- truncate_frequency: 60m
- min_age: 5m
- max_age: 4h
-- rule_path: /tmp/loki
-+ rule_path: /var/lib/loki
+diff --git a/cmd/loki/loki-local-with-memcached.yaml b/cmd/loki/loki-local-with-memcached.yaml
+index d69a983d61..405ca231ce 100644
+--- a/cmd/loki/loki-local-with-memcached.yaml
++++ b/cmd/loki/loki-local-with-memcached.yaml
+@@ -6,11 +6,11 @@ server:
+
+ common:
+ instance_addr: 127.0.0.1
+- path_prefix: /tmp/loki
++ path_prefix: /var/lib/loki
storage:
- type: local
- local:
-- directory: /tmp/rules
-+ directory: /var/lib/loki/rules
+ filesystem:
+- chunks_directory: /tmp/loki/chunks
+- rules_directory: /tmp/loki/rules
++ chunks_directory: /var/lib/loki/chunks
++ rules_directory: /var/lib/loki/rules
+ replication_factor: 1
ring:
kvstore:
- store: memberlist
-@@ -1268,8 +1268,8 @@ server:
- log_level: info
- storage_config:
- boltdb_shipper:
-- active_index_directory: /tmp/loki/index
-- cache_location: /tmp/loki/index_cache
-+ active_index_directory: /var/lib/loki/index
-+ cache_location: /var/lib/loki/index_cache
- cache_ttl: 24h
- resync_interval: 5m
- index_gateway_client:
-@@ -1339,7 +1339,7 @@ overrides:
- },
- Ruler: Ruler{
- Enabled: true,
-- RulesStorageDirectory: "/tmp/rules",
-+ RulesStorageDirectory: "/var/lib/loki/rules",
- EvaluationInterval: "1m",
- PollInterval: "1m",
- AlertManager: &AlertManagerConfig{
-@@ -1449,7 +1449,7 @@ common:
- instance_port: 9095
- compactor:
- compaction_interval: 2h
-- working_directory: /tmp/loki/compactor
-+ working_directory: /var/lib/loki/compactor
- frontend:
- tail_proxy_url: http://loki-querier-http-lokistack-dev.default.svc.cluster.local:3100
- compress_responses: true
-@@ -1616,15 +1616,15 @@ ruler:
- min_backoff: 30ms
- max_backoff: 100ms
- wal:
-- dir: /tmp/wal
-+ dir: /var/lib/loki/wal
- truncate_frequency: 60m
- min_age: 5m
- max_age: 4h
-- rule_path: /tmp/loki
-+ rule_path: /var/lib/loki
- storage:
- type: local
- local:
-- directory: /tmp/rules
-+ directory: /var/lib/loki/rules
- ring:
+diff --git a/docs/sources/alert/_index.md b/docs/sources/alert/_index.md
+index b0ef346d94..e1de29930c 100644
+--- a/docs/sources/alert/_index.md
++++ b/docs/sources/alert/_index.md
+@@ -375,13 +375,13 @@ A typical local configuration might look something like:
+
+ ```yaml
+ -ruler.storage.type=local
+- -ruler.storage.local.directory=/tmp/loki/rules
++ -ruler.storage.local.directory=/var/lib/loki/rules
+ ```
+
+ With the above configuration, the Ruler would expect the following layout:
+
+ ```bash
+-/tmp/loki/rules/<tenant id>/rules1.yaml
++/var/lib/loki/rules/<tenant id>/rules1.yaml
+ /rules2.yaml
+ ```
+
+diff --git a/docs/sources/configure/examples/configuration-examples.md b/docs/sources/configure/examples/configuration-examples.md
+index 9ab9921509..f7386187bd 100644
+--- a/docs/sources/configure/examples/configuration-examples.md
++++ b/docs/sources/configure/examples/configuration-examples.md
+@@ -23,7 +23,7 @@ common:
kvstore:
- store: memberlist
-@@ -1642,8 +1642,8 @@ server:
- log_level: info
- storage_config:
- boltdb_shipper:
-- active_index_directory: /tmp/loki/index
-- cache_location: /tmp/loki/index_cache
-+ active_index_directory: /var/lib/loki/index
-+ cache_location: /var/lib/loki/index_cache
- cache_ttl: 24h
- resync_interval: 5m
- index_gateway_client:
-@@ -1713,7 +1713,7 @@ overrides:
- },
- Ruler: Ruler{
- Enabled: true,
-- RulesStorageDirectory: "/tmp/rules",
-+ RulesStorageDirectory: "/var/lib/loki/rules",
- EvaluationInterval: "1m",
- PollInterval: "1m",
- AlertManager: &AlertManagerConfig{
-@@ -1840,7 +1840,7 @@ common:
- instance_port: 9095
- compactor:
- compaction_interval: 2h
-- working_directory: /tmp/loki/compactor
-+ working_directory: /var/lib/loki/compactor
- retention_enabled: true
- retention_delete_delay: 4h
- retention_delete_worker_count: 50
-@@ -1975,8 +1975,8 @@ server:
- log_level: info
+ store: inmemory
+ replication_factor: 1
+- path_prefix: /tmp/loki
++ path_prefix: /var/lib/loki
+
+ schema_config:
+ configs:
+@@ -37,7 +37,7 @@ schema_config:
+
storage_config:
- boltdb_shipper:
-- active_index_directory: /tmp/loki/index
-- cache_location: /tmp/loki/index_cache
-+ active_index_directory: /var/lib/loki/index
-+ cache_location: /var/lib/loki/index_cache
- cache_ttl: 24h
- resync_interval: 5m
- index_gateway_client:
-@@ -2181,7 +2181,7 @@ common:
- instance_port: 9095
+ filesystem:
+- directory: /tmp/loki/chunks
++ directory: /var/lib/loki/chunks
+
+ ```
+
+@@ -146,7 +146,7 @@ storage_config:
+ # This is a partial configuration to deploy Loki backed by Baidu Object Storage (BOS).
+ # The index will be shipped to the storage via tsdb-shipper.
+ common:
+- path_prefix: /tmp/loki
++ path_prefix: /var/lib/loki
+
+ schema_config:
+ configs:
+@@ -176,7 +176,7 @@ storage_config:
+ # Downloaded index files for compaction are stored in /loki/compactor.
+
compactor:
- compaction_interval: 2h
- working_directory: /tmp/loki/compactor
+ working_directory: /var/lib/loki/compactor
- frontend:
- tail_proxy_url: http://loki-querier-http-lokistack-dev.default.svc.cluster.local:3100
- compress_responses: true
-@@ -2361,15 +2361,15 @@ ruler:
- min_backoff: 30ms
- max_backoff: 100ms
- wal:
-- dir: /tmp/wal
-+ dir: /var/lib/loki/wal
- truncate_frequency: 60m
- min_age: 5m
- max_age: 4h
-- rule_path: /tmp/loki
-+ rule_path: /var/lib/loki
- storage:
- type: local
- local:
-- directory: /tmp/rules
-+ directory: /var/lib/loki/rules
- ring:
+ compaction_interval: 5m
+
+ ```
+@@ -187,7 +187,7 @@ compactor:
+ ```yaml
+
+ common:
+- path_prefix: /tmp/loki
++ path_prefix: /var/lib/loki
+
+ schema_config:
+ configs:
+@@ -221,7 +221,7 @@ schema_config:
+
+ # This partial configuration uses Alibaba for chunk storage.
+ common:
+- path_prefix: /tmp/loki
++ path_prefix: /var/lib/loki
+
+ schema_config:
+ configs:
+@@ -293,7 +293,7 @@ storage_config:
+
+ # This partial configuration uses IBM Cloud Object Storage (COS) for chunk storage. HMAC will be used for authenticating with COS.
+ common:
+- path_prefix: /tmp/loki
++ path_prefix: /var/lib/loki
+
+ schema_config:
+ configs:
+@@ -322,7 +322,7 @@ storage_config:
+
+ # This partial configuration uses IBM Cloud Object Storage (COS) for chunk storage. APIKey will be used for authenticating with COS.
+ common:
+- path_prefix: /tmp/loki
++ path_prefix: /var/lib/loki
+
+ schema_config:
+ configs:
+@@ -358,7 +358,7 @@ storage_config:
+ # In order to use trusted profile authentication we need to follow an additional step to create a trusted profile.
+ # For more details about creating a trusted profile, see https://cloud.ibm.com/docs/account?topic=account-create-trusted-profile&interface=ui.
+ common:
+- path_prefix: /tmp/loki
++ path_prefix: /var/lib/loki
+
+ schema_config:
+ configs:
+diff --git a/docs/sources/configure/examples/yaml/1-Local-Configuration-Example.yaml b/docs/sources/configure/examples/yaml/1-Local-Configuration-Example.yaml
+index 5d575922d3..c7c21ec6b8 100644
+--- a/docs/sources/configure/examples/yaml/1-Local-Configuration-Example.yaml
++++ b/docs/sources/configure/examples/yaml/1-Local-Configuration-Example.yaml
+@@ -12,7 +12,7 @@ common:
kvstore:
- store: memberlist
-@@ -2387,8 +2387,8 @@ server:
- log_level: info
- storage_config:
- boltdb_shipper:
-- active_index_directory: /tmp/loki/index
-- cache_location: /tmp/loki/index_cache
-+ active_index_directory: /var/lib/loki/index
-+ cache_location: /var/lib/loki/index_cache
- cache_ttl: 24h
- resync_interval: 5m
- index_gateway_client:
-@@ -2458,7 +2458,7 @@ overrides:
- },
- Ruler: Ruler{
- Enabled: true,
-- RulesStorageDirectory: "/tmp/rules",
-+ RulesStorageDirectory: "/var/lib/loki/rules",
- EvaluationInterval: "1m",
- PollInterval: "1m",
- AlertManager: &AlertManagerConfig{
-@@ -2601,7 +2601,7 @@ common:
- instance_port: 9095
- compactor:
- compaction_interval: 2h
-- working_directory: /tmp/loki/compactor
-+ working_directory: /var/lib/loki/compactor
- frontend:
- tail_proxy_url: http://loki-querier-http-lokistack-dev.default.svc.cluster.local:3100
- tail_tls_config:
-@@ -2777,8 +2777,8 @@ server:
- log_level: info
+ store: inmemory
+ replication_factor: 1
+- path_prefix: /tmp/loki
++ path_prefix: /var/lib/loki
+
+ schema_config:
+ configs:
+@@ -26,4 +26,4 @@ schema_config:
+
storage_config:
- boltdb_shipper:
-- active_index_directory: /tmp/loki/index
-- cache_location: /tmp/loki/index_cache
-+ active_index_directory: /var/lib/loki/index
-+ cache_location: /var/lib/loki/index_cache
- cache_ttl: 24h
- resync_interval: 5m
- index_gateway_client:
-@@ -2948,7 +2948,7 @@ common:
- instance_port: 9095
+ filesystem:
+- directory: /tmp/loki/chunks
++ directory: /var/lib/loki/chunks
+diff --git a/docs/sources/configure/examples/yaml/11-COS-HMAC-Example.yaml b/docs/sources/configure/examples/yaml/11-COS-HMAC-Example.yaml
+index a246d0e491..c0d138c40a 100644
+--- a/docs/sources/configure/examples/yaml/11-COS-HMAC-Example.yaml
++++ b/docs/sources/configure/examples/yaml/11-COS-HMAC-Example.yaml
+@@ -1,6 +1,6 @@
+ # This partial configuration uses IBM Cloud Object Storage (COS) for chunk storage. HMAC will be used for authenticating with COS.
+ common:
+- path_prefix: /tmp/loki
++ path_prefix: /var/lib/loki
+
+ schema_config:
+ configs:
+diff --git a/docs/sources/configure/examples/yaml/12-COS-APIKey-Example.yaml b/docs/sources/configure/examples/yaml/12-COS-APIKey-Example.yaml
+index 2247d96d5d..b2e62bf120 100644
+--- a/docs/sources/configure/examples/yaml/12-COS-APIKey-Example.yaml
++++ b/docs/sources/configure/examples/yaml/12-COS-APIKey-Example.yaml
+@@ -1,6 +1,6 @@
+ # This partial configuration uses IBM Cloud Object Storage (COS) for chunk storage. APIKey will be used for authenticating with COS.
+ common:
+- path_prefix: /tmp/loki
++ path_prefix: /var/lib/loki
+
+ schema_config:
+ configs:
+diff --git a/docs/sources/configure/examples/yaml/13-COS-Trusted-Profile-Example.yaml b/docs/sources/configure/examples/yaml/13-COS-Trusted-Profile-Example.yaml
+index 5f3651f4d0..276c33d61e 100644
+--- a/docs/sources/configure/examples/yaml/13-COS-Trusted-Profile-Example.yaml
++++ b/docs/sources/configure/examples/yaml/13-COS-Trusted-Profile-Example.yaml
+@@ -6,7 +6,7 @@
+ # In order to use trusted profile authentication we need to follow an additional step to create a trusted profile.
+ # For more details about creating a trusted profile, see https://cloud.ibm.com/docs/account?topic=account-create-trusted-profile&interface=ui.
+ common:
+- path_prefix: /tmp/loki
++ path_prefix: /var/lib/loki
+
+ schema_config:
+ configs:
+diff --git a/docs/sources/configure/examples/yaml/5-BOS-Example.yaml b/docs/sources/configure/examples/yaml/5-BOS-Example.yaml
+index 5367106ed4..d650305bc6 100644
+--- a/docs/sources/configure/examples/yaml/5-BOS-Example.yaml
++++ b/docs/sources/configure/examples/yaml/5-BOS-Example.yaml
+@@ -1,7 +1,7 @@
+ # This is a partial configuration to deploy Loki backed by Baidu Object Storage (BOS).
+ # The index will be shipped to the storage via tsdb-shipper.
+ common:
+- path_prefix: /tmp/loki
++ path_prefix: /var/lib/loki
+
+ schema_config:
+ configs:
+diff --git a/docs/sources/configure/examples/yaml/6-Compactor-Snippet.yaml b/docs/sources/configure/examples/yaml/6-Compactor-Snippet.yaml
+index 3b5d5df075..ede17890c6 100644
+--- a/docs/sources/configure/examples/yaml/6-Compactor-Snippet.yaml
++++ b/docs/sources/configure/examples/yaml/6-Compactor-Snippet.yaml
+@@ -3,5 +3,5 @@
+ # Downloaded index files for compaction are stored in /loki/compactor.
+
compactor:
- compaction_interval: 2h
- working_directory: /tmp/loki/compactor
+ working_directory: /var/lib/loki/compactor
- frontend:
- tail_proxy_url: http://loki-querier-http-lokistack-dev.default.svc.cluster.local:3100
- compress_responses: true
-@@ -3128,15 +3128,15 @@ ruler:
- min_backoff: 30ms
- max_backoff: 100ms
- wal:
-- dir: /tmp/wal
-+ dir: /var/lib/loki/wal
- truncate_frequency: 60m
- min_age: 5m
- max_age: 4h
-- rule_path: /tmp/loki
-+ rule_path: /var/lib/loki
+ compaction_interval: 5m
+diff --git a/docs/sources/configure/examples/yaml/7-Schema-Migration-Snippet.yaml b/docs/sources/configure/examples/yaml/7-Schema-Migration-Snippet.yaml
+index 0c59e40807..23edd4128f 100644
+--- a/docs/sources/configure/examples/yaml/7-Schema-Migration-Snippet.yaml
++++ b/docs/sources/configure/examples/yaml/7-Schema-Migration-Snippet.yaml
+@@ -1,5 +1,5 @@
+ common:
+- path_prefix: /tmp/loki
++ path_prefix: /var/lib/loki
+
+ schema_config:
+ configs:
+diff --git a/docs/sources/configure/examples/yaml/8-alibaba-cloud-storage-Snippet.yaml b/docs/sources/configure/examples/yaml/8-alibaba-cloud-storage-Snippet.yaml
+index 7d48a54fe8..078b347e6b 100644
+--- a/docs/sources/configure/examples/yaml/8-alibaba-cloud-storage-Snippet.yaml
++++ b/docs/sources/configure/examples/yaml/8-alibaba-cloud-storage-Snippet.yaml
+@@ -1,6 +1,6 @@
+ # This partial configuration uses Alibaba for chunk storage.
+ common:
+- path_prefix: /tmp/loki
++ path_prefix: /var/lib/loki
+
+ schema_config:
+ configs:
+diff --git a/docs/sources/get-started/quick-start/tutorial.md b/docs/sources/get-started/quick-start/tutorial.md
+index 57bf7a1dbd..8f13f347f2 100644
+--- a/docs/sources/get-started/quick-start/tutorial.md
++++ b/docs/sources/get-started/quick-start/tutorial.md
+@@ -379,11 +379,11 @@ server:
+
+ common:
+ instance_addr: 127.0.0.1
+- path_prefix: /tmp/loki
++ path_prefix: /var/lib/loki
storage:
- type: local
- local:
-- directory: /tmp/rules
-+ directory: /var/lib/loki/rules
+ filesystem:
+- chunks_directory: /tmp/loki/chunks
+- rules_directory: /tmp/loki/rules
++ chunks_directory: /var/lib/loki/chunks
++ rules_directory: /var/lib/loki/rules
+ replication_factor: 1
ring:
kvstore:
- store: memberlist
-@@ -3154,8 +3154,8 @@ server:
- log_level: info
+@@ -425,7 +425,7 @@ frontend:
+ encoding: protobuf
+
+ compactor:
+- working_directory: /tmp/loki/retention
++ working_directory: /var/lib/loki/retention
+ delete_request_store: filesystem
+ retention_enabled: true
+ ```
+diff --git a/docs/sources/operations/storage/filesystem.md b/docs/sources/operations/storage/filesystem.md
+index 68ca759caf..5d74469556 100644
+--- a/docs/sources/operations/storage/filesystem.md
++++ b/docs/sources/operations/storage/filesystem.md
+@@ -13,7 +13,7 @@ Very simply it stores all the objects (chunks) in the specified directory:
+ ```yaml
storage_config:
- boltdb_shipper:
-- active_index_directory: /tmp/loki/index
-- cache_location: /tmp/loki/index_cache
-+ active_index_directory: /var/lib/loki/index
-+ cache_location: /var/lib/loki/index_cache
- cache_ttl: 24h
- resync_interval: 5m
- index_gateway_client:
-@@ -3301,7 +3301,7 @@ overrides:
- },
- Ruler: Ruler{
- Enabled: true,
-- RulesStorageDirectory: "/tmp/rules",
-+ RulesStorageDirectory: "/var/lib/loki/rules",
- EvaluationInterval: "1m",
- PollInterval: "1m",
-
-Index: loki/clients/pkg/promtail/promtail_test.go
-===================================================================
---- loki.orig/clients/pkg/promtail/promtail_test.go
-+++ loki/clients/pkg/promtail/promtail_test.go
-@@ -55,7 +55,7 @@ func TestPromtail(t *testing.T) {
- util_log.Logger = logger
-
- testutils.InitRandom()
-- dirName := filepath.Join(os.TempDir(), "/promtail_test_"+testutils.RandName())
-+ dirName := "/var/lib/promtail_test_" + randName()
- positionsFileName := dirName + "/positions.yml"
-
- err := os.MkdirAll(dirName, 0o750)
-Index: loki/operator/docs/enhancements/ruler_support.md
-===================================================================
---- loki.orig/operator/docs/enhancements/ruler_support.md
-+++ loki/operator/docs/enhancements/ruler_support.md
-@@ -769,7 +769,7 @@ spec:
- volumeMounts:
- - name: "rules"
- volume: "rules"
-- path: "/tmp/rules"
-+ path: "/var/lib/loki/rules"
- volumes:
- - name: "rules"
- items:
-@@ -786,7 +786,7 @@ spec:
- In turn the rules directory is outlined as such:
+ filesystem:
+- directory: /tmp/loki/
++ directory: /var/lib/loki/
+ ```
+ A folder is created for every tenant all the chunks for one tenant are stored in that directory.
+diff --git a/docs/sources/setup/upgrade/_index.md b/docs/sources/setup/upgrade/_index.md
+index 22762b33e4..09b1e28fb0 100644
+--- a/docs/sources/setup/upgrade/_index.md
++++ b/docs/sources/setup/upgrade/_index.md
+@@ -1698,8 +1698,8 @@ The location Loki is looking for files with the provided config in the docker im
+ In 1.4.0 and earlier the included config file in the docker container was using directories:
+
+ ```shell
+-/tmp/loki/index
+-/tmp/loki/chunks
++/var/lib/loki/index
++/var/lib/loki/chunks
```
--/tmp/rules/application/ns-a-alerting-rule-a-kube-uid-a.yaml
-+/var/lib/loki/rules/application/ns-a-alerting-rule-a-kube-uid-a.yaml
- /application/ns-a-recording-rule-a-kube-uid-b.yaml
- /infrastructure/ns-b-alerting-rule-b-kube-uid-c.yaml
- /infrastructure/ns-b-recording-rule-b-kube-uid-d.yaml
-Index: loki/pkg/logcli/client/file_test.go
-===================================================================
---- loki.orig/pkg/logcli/client/file_test.go
-+++ loki/pkg/logcli/client/file_test.go
-@@ -20,8 +20,8 @@ func TestFileClient_QueryRangeLogQueries
- input := []string{
- `level=info event="loki started" caller=main.go ts=1625995076`,
- `level=info event="runtime loader started" caller=main.go ts=1625995077`,
-- `level=error event="unable to read rules directory" file="/tmp/rules" caller=rules.go ts=1625995090`,
-- `level=error event="failed to apply wal" error="/tmp/wal/ corrupted" caller=wal.go ts=1625996090`,
-+ `level=error event="unable to read rules directory" file="/var/lib/loki/rules" caller=rules.go ts=1625995090`,
-+ `level=error event="failed to apply wal" error="/var/lib/loki/wal/ corrupted" caller=wal.go ts=1625996090`,
- `level=info event="loki ready" caller=main.go ts=1625996095`,
- }
-
-@@ -92,8 +92,8 @@ func TestFileClient_Query(t *testing.T)
- input := []string{
- `level=info event="loki started" caller=main.go ts=1625995076`,
- `level=info event="runtime loader started" caller=main.go ts=1625995077`,
-- `level=error event="unable to read rules directory" file="/tmp/rules" caller=rules.go ts=1625995090`,
-- `level=error event="failed to apply wal" error="/tmp/wal/ corrupted" caller=wal.go ts=1625996090`,
-+ `level=error event="unable to read rules directory" file="/var/lib/loki/rules" caller=rules.go ts=1625995090`,
-+ `level=error event="failed to apply wal" error="/var/lib/loki/wal/ corrupted" caller=wal.go ts=1625996090`,
- `level=info event="loki ready" caller=main.go ts=1625996095`,
- }
-
-Index: loki/pkg/loki/config_wrapper_test.go
-===================================================================
---- loki.orig/pkg/loki/config_wrapper_test.go
-+++ loki/pkg/loki/config_wrapper_test.go
-@@ -683,15 +683,15 @@ memberlist:
- fsConfig := `common:
- storage:
- filesystem:
-- chunks_directory: /tmp/chunks
-- rules_directory: /tmp/rules`
-+ chunks_directory: /var/lib/loki/chunks
-+ rules_directory: /var/lib/loki/rules`
- config, defaults := testContext(fsConfig, nil)
+ In 1.5.0 this has changed:
+@@ -1715,9 +1715,9 @@ This will mostly affect anyone using docker-compose or docker to run Loki and ar
+
+ One possible upgrade path would look like this:
- assert.Equal(t, "local", config.Ruler.StoreConfig.Type)
+-If I were running Loki with this command `docker run -d --name=loki --mount source=loki-data,target=/tmp/loki -p 3100:3100 grafana/loki:1.4.0`
++If I were running Loki with this command `docker run -d --name=loki --mount source=loki-data,target=/var/lib/loki -p 3100:3100 grafana/loki:1.4.0`
-- assert.Equal(t, "/tmp/rules", config.Ruler.StoreConfig.Local.Directory)
-- assert.Equal(t, "/tmp/chunks", config.StorageConfig.FSConfig.Directory)
-+ assert.Equal(t, "/var/lib/loki/rules", config.Ruler.StoreConfig.Local.Directory)
-+ assert.Equal(t, "/var/lib/loki/chunks", config.StorageConfig.FSConfig.Directory)
+-This would mount a docker volume named `loki-data` to the `/tmp/loki` folder which is where Loki will persist the `index` and `chunks` folder in 1.4.0
++This would mount a docker volume named `loki-data` to the `/var/lib/loki` folder which is where Loki will persist the `index` and `chunks` folder in 1.4.0
+
+ To move to 1.5.0 I can do the following (note that your container names and paths and volumes etc may be different):
+
+diff --git a/production/helm/loki/templates/ruler/statefulset-ruler.yaml b/production/helm/loki/templates/ruler/statefulset-ruler.yaml
+index 06fe6185d6..86c217e797 100644
+--- a/production/helm/loki/templates/ruler/statefulset-ruler.yaml
++++ b/production/helm/loki/templates/ruler/statefulset-ruler.yaml
+@@ -113,7 +113,7 @@ spec:
+ - name: data
+ mountPath: /var/loki
+ - name: tmp
+- mountPath: /tmp/loki
++ mountPath: /var/lib/loki
+ {{- if .Values.enterprise.enabled }}
+ - name: license
+ mountPath: /etc/loki/license
+diff --git a/tools/deprecated-config-checker/test-fixtures/config.yaml b/tools/deprecated-config-checker/test-fixtures/config.yaml
+index be875f3ac1..b84b65a3e9 100644
+--- a/tools/deprecated-config-checker/test-fixtures/config.yaml
++++ b/tools/deprecated-config-checker/test-fixtures/config.yaml
+@@ -5,11 +5,11 @@ server:
+ http_listen_port: 3100
- // should remain empty
- assert.EqualValues(t, defaults.Ruler.StoreConfig.GCS, config.Ruler.StoreConfig.GCS)
-Index: loki/pkg/loki/loki_test.go
-===================================================================
---- loki.orig/pkg/loki/loki_test.go
-+++ loki/pkg/loki/loki_test.go
-@@ -187,7 +187,7 @@ server:
- grpc_listen_port: %d
common:
- compactor_address: http://localhost:%d
- path_prefix: /tmp/loki
+ path_prefix: /var/lib/loki
- instance_addr: localhost
- ring:
- kvstore:
-Index: loki/production/ksonnet/loki/config.libsonnet
-===================================================================
---- loki.orig/production/ksonnet/loki/config.libsonnet
-+++ loki/production/ksonnet/loki/config.libsonnet
-@@ -381,7 +381,7 @@
- },
-
- ruler: if $._config.ruler_enabled then {
-- rule_path: '/tmp/rules',
-+ rule_path: '/var/lib/loki/rules',
- enable_api: true,
- alertmanager_url: 'http://alertmanager.%s.svc.cluster.local/alertmanager' % $._config.namespace,
- enable_sharding: true,
-Index: loki/production/nomad/loki-distributed/config.yml
-===================================================================
---- loki.orig/production/nomad/loki-distributed/config.yml
-+++ loki/production/nomad/loki-distributed/config.yml
-@@ -113,7 +113,7 @@ ruler:
- enable_alertmanager_v2: true
- enable_api: true
- external_url: https://loki-ruler.service.consul
-- rule_path: {{ env "NOMAD_ALLOC_DIR" }}/tmp/rules
-+ rule_path: {{ env "NOMAD_ALLOC_DIR" }}/var/lib/loki/rules
- storage:
- type: local
- local:
-Index: loki/production/nomad/loki-simple/config.yml
-===================================================================
---- loki.orig/production/nomad/loki-simple/config.yml
-+++ loki/production/nomad/loki-simple/config.yml
-@@ -64,7 +64,7 @@ ruler:
- enable_alertmanager_v2: true
- enable_api: true
- external_url: https://loki.service.consul
-- rule_path: {{ env "NOMAD_ALLOC_DIR" }}/tmp/rules
-+ rule_path: {{ env "NOMAD_ALLOC_DIR" }}/var/lib/loki/rules
- storage:
- type: local
- local:
-Index: loki/production/nomad/loki/config.yml
-===================================================================
---- loki.orig/production/nomad/loki/config.yml
-+++ loki/production/nomad/loki/config.yml
-@@ -64,7 +64,7 @@ ruler:
- enable_alertmanager_v2: true
- enable_api: true
- external_url: https://loki.service.consul
-- rule_path: {{ env "NOMAD_ALLOC_DIR" }}/tmp/rules
-+ rule_path: {{ env "NOMAD_ALLOC_DIR" }}/var/lib/loki/rules
storage:
- type: local
- local:
-Index: loki/clients/cmd/promtail/promtail-journal.yaml
-===================================================================
---- loki.orig/clients/cmd/promtail/promtail-journal.yaml
-+++ loki/clients/cmd/promtail/promtail-journal.yaml
-@@ -3,7 +3,7 @@ server:
- grpc_listen_port: 0
-
- positions:
-- filename: /tmp/positions.yaml
-+ filename: /var/lib/promtail/positions.yaml
-
- clients:
- - url: http://localhost:3100/loki/api/v1/push
-Index: loki/examples/promtail-heroku/config.yml
-===================================================================
---- loki.orig/examples/promtail-heroku/config.yml
-+++ loki/examples/promtail-heroku/config.yml
-@@ -4,7 +4,7 @@ server:
- log_level: "info"
-
- positions:
-- filename: /tmp/positions.yaml
-+ filename: /var/lib/promtail/positions.yaml
-
- # This bit indicates what Loki instance to write the logs to. We’ll inject the
- # details and credentials through environment variables
-Index: loki/operator/hack/addons_dev.yaml
-===================================================================
---- loki.orig/operator/hack/addons_dev.yaml
-+++ loki/operator/hack/addons_dev.yaml
-@@ -87,7 +87,7 @@ spec:
- volumeMounts:
- - mountPath: /etc/promtail
- name: config
-- - mountPath: /tmp/promtail
-+ - mountPath: /var/lib/promtail
- name: run
- - mountPath: /var/lib/docker/containers
- name: docker
-@@ -151,7 +151,7 @@ data:
- batchwait: 10s
- timeout: 10s
- positions:
-- filename: /tmp/promtail/positions.yaml
-+ filename: /var/lib/promtail/positions.yaml
- server:
- http_listen_port: 3100
- grpc_listen_port: 9095
-Index: loki/operator/hack/addons_ocp.yaml
-===================================================================
---- loki.orig/operator/hack/addons_ocp.yaml
-+++ loki/operator/hack/addons_ocp.yaml
-@@ -84,7 +84,7 @@ spec:
- volumeMounts:
- - mountPath: /etc/promtail
- name: config
-- - mountPath: /tmp/promtail
-+ - mountPath: /var/lib/promtail
- name: run
- - mountPath: /var/lib/docker/containers
- name: docker
-@@ -147,7 +147,7 @@ data:
- batchwait: 10s
- timeout: 10s
- positions:
-- filename: /tmp/promtail/positions.yaml
-+ filename: /var/lib/promtail/positions.yaml
- server:
- http_listen_port: 3100
- grpc_listen_port: 9095
-Index: loki/operator/internal/manifests/var.go
-===================================================================
---- loki.orig/operator/internal/manifests/var.go
-+++ loki/operator/internal/manifests/var.go
-@@ -48,9 +48,9 @@ const (
- storageVolumeName = "storage"
- rulePartsSeparator = "___"
-
-- walDirectory = "/tmp/wal"
-- dataDirectory = "/tmp/loki"
-- rulesStorageDirectory = "/tmp/rules"
-+ walDirectory = "/var/lib/loki/wal"
-+ dataDirectory = "/var/lib/loki"
-+ rulesStorageDirectory = "/var/lib/loki/rules"
-
- rulerContainerName = "loki-ruler"
-
-Index: loki/pkg/storage/hack/main.go
-===================================================================
---- loki.orig/pkg/storage/hack/main.go
-+++ loki/pkg/storage/hack/main.go
-@@ -37,7 +37,7 @@ var (
- func main() {
- cm := storage.NewClientMetrics()
- defer cm.Unregister()
-- if _, err := os.Stat("/tmp/benchmark/chunks"); os.IsNotExist(err) {
-+ if _, err := os.Stat("/var/lib/loki/benchmark/chunks"); os.IsNotExist(err) {
- if err := fillStore(cm); err != nil {
- log.Fatal("error filling up storage:", err)
- }
-@@ -46,8 +46,8 @@ func main() {
-
- func getStore(cm storage.ClientMetrics) (storage.Store, *config.SchemaConfig, error) {
- storeConfig := storage.Config{
-- BoltDBConfig: local.BoltDBConfig{Directory: "/tmp/benchmark/index"},
-- FSConfig: local.FSConfig{Directory: "/tmp/benchmark/chunks"},
-+ BoltDBConfig: local.BoltDBConfig{Directory: "/var/lib/loki/benchmark/index"},
-+ FSConfig: local.FSConfig{Directory: "/var/lib/loki/benchmark/chunks"},
- }
-
- schemaCfg := config.SchemaConfig{
-Index: loki/pkg/storage/store_test.go
-===================================================================
---- loki.orig/pkg/storage/store_test.go
-+++ loki/pkg/storage/store_test.go
-@@ -52,7 +52,7 @@ var (
- m runtime.MemStats
- ctx = user.InjectOrgID(context.Background(), "fake")
- cm = NewClientMetrics()
-- chunkStore = getLocalStore("/tmp/benchmark/", cm)
-+ chunkStore = getLocalStore("/var/lib/loki/benchmark/", cm)
- )
-
- // go test -bench=. -benchmem -memprofile memprofile.out -cpuprofile profile.out
-@@ -106,7 +106,7 @@ func Benchmark_store_SelectLogsBackward(
- })
- }
-
--// rm -Rf /tmp/benchmark/chunks/ /tmp/benchmark/index
-+// rm -Rf /var/lib/loki/benchmark/chunks/ /var/lib/loki/benchmark/index
- // go run -mod=vendor ./pkg/storage/hack/main.go
- // go test -benchmem -run=^$ -mod=vendor ./pkg/storage -bench=Benchmark_store_SelectSample -memprofile memprofile.out -cpuprofile cpuprofile.out
- func Benchmark_store_SelectSample(b *testing.B) {
-Index: loki/vendor/github.com/baidubce/bce-sdk-go/util/log/logger.go
-===================================================================
---- loki.orig/vendor/github.com/baidubce/bce-sdk-go/util/log/logger.go
-+++ loki/vendor/github.com/baidubce/bce-sdk-go/util/log/logger.go
-@@ -18,7 +18,7 @@
- // log to file with rotating. It is safe to be called by multiple goroutines.
- // By using the package level function to use the default logger:
- // log.SetLogHandler(log.STDOUT | log.FILE) // default is log to stdout
--// log.SetLogDir("/tmp") // default is /tmp
-+// log.SetLogDir("/var/lib/loki") // default is /var/lib/loki
- // log.SetRotateType(log.ROTATE_DAY) // default is log.HOUR
- // log.SetRotateSize(1 << 30) // default is 1GB
- // log.SetLogLevel(log.INFO) // default is log.DEBUG
-@@ -67,7 +67,7 @@ const (
-
- DEFAULT_ROTATE_TYPE = ROTATE_HOUR
- DEFAULT_ROTATE_SIZE int64 = 1 << 30
-- DEFAULT_LOG_DIR = "/tmp"
-+ DEFAULT_LOG_DIR = "/var/lib/loki"
- ROTATE_SIZE_FILE_PREFIX = "rotating"
- )
-
-Index: loki/examples/getting-started/loki-config.yaml
-===================================================================
---- loki.orig/examples/getting-started/loki-config.yaml
-+++ loki/examples/getting-started/loki-config.yaml
-@@ -22,7 +22,7 @@ schema_config:
- prefix: index_
- period: 24h
+ filesystem:
+- chunks_directory: /tmp/loki/chunks
+- rules_directory: /tmp/loki/rules
++ chunks_directory: /var/lib/loki/chunks
++ rules_directory: /var/lib/loki/rules
+ s3: &s3_cfg
+ s3: "bucket.123abc.net"
+ sse_encryption: true # DELETED
+@@ -41,7 +41,7 @@ index_gateway:
+ instance_interface_names: ["eth0", "eth1"]
+
+ compactor:
+- working_directory: /tmp/loki/boltdb-shipper-active
++ working_directory: /var/lib/loki/boltdb-shipper-active
+ shared_store: gcs # DELETED
+ shared_store_key_prefix: /index # DELETED
+ deletion_mode: "delete" # DELETED
+@@ -67,13 +67,13 @@ storage_config:
+ cassandra: # DEPRECATED
+ addresses: 'a.b.c.d:9042'
+ boltdb: # DEPRECATED
+- directory: /tmp/loki/boltdb
++ directory: /var/lib/loki/boltdb
+ grpc_store: # DEPRECATED
+ server_address: "grpc.123abc.net"
+ boltdb_shipper:
+ shared_store: gcs # DELETED
+ shared_store_key_prefix: /index # DELETED
+- active_index_directory: /tmp/loki/boltdb-shipper-active
++ active_index_directory: /var/lib/loki/boltdb-shipper-active
+ use_boltdb_shipper_as_backup: true # DELETED
+ tsdb_shipper:
+ shared_store: gcs # DELETED
+diff --git a/tools/dev/kafka/README.md b/tools/dev/kafka/README.md
+index e2d60e549c..c0afa0b8c7 100644
+--- a/tools/dev/kafka/README.md
++++ b/tools/dev/kafka/README.md
+@@ -49,7 +49,7 @@ This directory contains the development environment for testing Loki with Kafka
+ - `docker-compose.yaml`: Service definitions and configuration
+ - `loki-local-config.debug.yaml`: Loki configuration with Kafka enabled
+ - Kafka ingestion enabled
+- - Local storage in `/tmp/loki`
++ - Local storage in `/var/lib/loki`
+ - Debug logging enabled
+
+ ## Debugging
+@@ -95,7 +95,7 @@ docker-compose logs -f grafana
+ docker-compose down
+
+ # Remove local Loki data
+-rm -rf /tmp/loki
++rm -rf /var/lib/loki
+
+ # Start fresh
+ docker-compose up -d
+diff --git a/tools/dev/kafka/loki-local-config.debug.yaml b/tools/dev/kafka/loki-local-config.debug.yaml
+index bb65fac2f7..a05cd6dfdb 100644
+--- a/tools/dev/kafka/loki-local-config.debug.yaml
++++ b/tools/dev/kafka/loki-local-config.debug.yaml
+@@ -8,11 +8,11 @@ server:
+
common:
-- path_prefix: /loki
+ instance_addr: 127.0.0.1
+- path_prefix: /tmp/loki
+ path_prefix: /var/lib/loki
- replication_factor: 1
- compactor_address: http://backend:3100
storage:
-@@ -42,4 +42,4 @@ ruler:
- bucketnames: loki-ruler
+ filesystem:
+- chunks_directory: /tmp/loki/chunks
+- rules_directory: /tmp/loki/rules
++ chunks_directory: /var/lib/loki/chunks
++ rules_directory: /var/lib/loki/rules
+ replication_factor: 1
+ ring:
+ kvstore:
+diff --git a/tools/stream-generator/docker-compose.yaml b/tools/stream-generator/docker-compose.yaml
+index 4dac82f2d9..4d3b724e6e 100644
+--- a/tools/stream-generator/docker-compose.yaml
++++ b/tools/stream-generator/docker-compose.yaml
+@@ -58,7 +58,7 @@ services:
+ volumes:
+ - ./loki-local-config.debug.yaml:/etc/loki/local-config.yaml
+ - ./entrypoint.sh:/entrypoint.sh
+- - loki-data:/tmp/loki
++ - loki-data:/var/lib/loki
+ entrypoint: ["/entrypoint.sh"]
+ depends_on:
+ - broker
+diff --git a/tools/stream-generator/loki-local-config.debug.yaml b/tools/stream-generator/loki-local-config.debug.yaml
+index 5c23483b51..d6f50af95a 100644
+--- a/tools/stream-generator/loki-local-config.debug.yaml
++++ b/tools/stream-generator/loki-local-config.debug.yaml
+@@ -8,11 +8,11 @@ server:
- compactor:
-- working_directory: /tmp/compactor
-\ No newline at end of file
-+ working_directory: /var/lib/loki/compactor
-Index: loki/production/docker/config/loki.yaml
-===================================================================
---- loki.orig/production/docker/config/loki.yaml
-+++ loki/production/docker/config/loki.yaml
-@@ -8,7 +8,7 @@ server:
- log_level: info
-
- common:
-- path_prefix: /loki
-+ path_prefix: /var/lib/loki
- compactor_address: http://loki-backend:3100
- replication_factor: 3
-
-@@ -42,7 +42,7 @@ ingester:
- chunk_idle_period: 1m
- wal:
- enabled: true
-- dir: /loki/wal
-+ dir: /var/lib/loki/wal
- max_chunk_age: 1m
- chunk_retain_period: 30s
- chunk_encoding: snappy
-@@ -54,7 +54,7 @@ ruler:
- enable_api: true
- enable_sharding: true
- wal:
-- dir: /loki/ruler-wal
-+ dir: /var/lib/loki/ruler-wal
- evaluation:
- mode: remote
- query_frontend:
-@@ -62,8 +62,8 @@ ruler:
+ common:
+ #instance_addr: 127.0.0.1
+- path_prefix: /tmp/loki
++ path_prefix: /var/lib/loki
storage:
- type: local
- local:
-- directory: /loki/rules
-- rule_path: /loki/prom-rules
-+ directory: /var/lib/loki/rules
-+ rule_path: /var/lkib/loki/prom-rules
- remote_write:
- enabled: true
- clients:
-@@ -139,4 +139,4 @@ querier:
- query_ingesters_within: 2h
-
- compactor:
-- working_directory: /tmp/compactor
-+ working_directory: /var/lib/loki/compactor
+ filesystem:
+- chunks_directory: /tmp/loki/chunks
+- rules_directory: /tmp/loki/rules
++ chunks_directory: /var/lib/loki/chunks
++ rules_directory: /var/lib/loki/rules
+ replication_factor: 1
+ ring:
+ instance_id: local