Update dependency https://github.com/grafana/loki.git to v3
This MR contains the following updates:
| Package | Update | Change |
|---|---|---|
| https://github.com/grafana/loki.git | major |
v2.9.7 -> v3.1.1
|
Release Notes
grafana/loki (https://github.com/grafana/loki.git)
v3.1.1
Features
Bug Fixes
v3.1.0
⚠ BREAKING CHANGES
- update helm chart to support distributed mode and 3.0 (#12067)
Features
- Add a version of the mixin dashboards for meta monitoring (#12700) (ec1a057)
- Add backoff to flush op (#13140) (9767807)
- add detected-fields command to logcli (#12739) (210ea93)
- Add ingester_chunks_flush_failures_total (#12925) (cc3694e)
- add lokitool (#12166) (7b7d3d4)
- Add metrics for number of patterns detected & evicted (#12918) (bc53b33)
- Add new Drain tokenizer that splits on most punctuation (#13143) (6a0fdd0)
- Add pattern ingester support in SSD mode (#12685) (19bfef4)
- add profile tagging to ingester (#13068) (00d3c7a)
- add recalculateOwnedStreams to check stream ownership if the ring is changed (#13103) (e7689b2)
- Add step param to Patterns Query API (#12703) (7b8533e)
- Add tokenizer interface for Drain Training (#13069) (797bb64)
- add toleration for bloom components (#12653) (fcb2b0a)
- Add utf8 support to Pattern Lexer to support utf8 chars (#13085) (f6f8bab)
- add warnings to metadata context directly (#12579) (c4ac8cc)
- Added getting started video (#12975) (8442dca)
- Added Interactive Sandbox to Quickstart tutorial (#12701) (97212ea)
- Added video and updated Grafana Agent -> Alloy (#13032) (1432a3e)
- API: Expose optional label matcher for label names API (#11982) (8084259)
- area/promtail: Added support to install wget on promtail docker image to support docker healthcheck (#11711) (ffe684c)
- blooms: Add counter metric for blocks that are not available at query time (#12968) (d6374bc)
- blooms: Add in-memory LRU cache for meta files (#12862) (fcd544c)
- blooms: Blooms/v2 encoding multipart series (#13093) (fbe7c55)
- blooms: compute chunks once (#12664) (bc78d13)
- blooms: ignore individual bloom-gw failures (#12863) (4c9b22f)
- blooms: ingester aware bounded impl (#12840) (7bbd8b5)
- bloom: Skip attempts to filter chunks for which blooms have not been built (#12961) (a1b1eeb)
- blooms: limit bloom size during creation (#12796) (eac5622)
- blooms: record time spent resolving shards (#12636) (9c25985)
- blooms: Separate page buffer pools for series pages and bloom pages (#12992) (75ccf21)
- Boilerplate for new bloom build planner and worker components. (#12989) (8978ecf)
-
cache: Add
Cache-Control: no-cachesupport for Loki instant queries. (#12896) (88e545f) - canary: Add test to check query results with and without cache. (#13104) (71507a2)
- Detected labels from store (#12441) (587a6d2)
- detected-labels: include labels with cardinality > 1 (#13128) (8be8364)
- detectedFields: add parser to response (#12872) (2b3ae48)
- detectedFields: Support multiple parsers to be returned for a single field (#12899) (19fef93)
- Enable log volume endpoint by default (#12628) (397aa56)
- Enable log volume endpoint by default in helm (#12690) (e39677f)
- Generic logline placeholder replacement and tokenization (#12799) (4047902)
- helm: Allow extraObject items as multiline strings (#12397) (af5be90)
- helm: Support for PVC Annotations for Non-Distributed Modes (#12023) (efdae3d)
- improve performance of
first_over_timeandlast_over_timequeries by sharding them (#11605) (f66172e) - improve syntax parser for pattern (#12489) (48dae44)
- include the stream we failed to create in the stream limit error message (#12437) (ec81991)
- Increase drain max depth from 8 -> 30 (#13063) (d0a2859)
- Introduce
index audittolokitool(#13008) (47f0236) - loki/main.go: Log which config file path is used on startup (#12985) (7a3338e)
- new stream count limiter (#13006) (1111595)
- Optimize log parsing performance by using unsafe package (#13223) (9f31b25)
- parameterise the MaximumEventAgeInSeconds, LogGroupName, and IAMRoleName for lambda-promtail CloudFormation template (#12728) (8892dc8)
- promtail: Support of RFC3164 aka BSD Syslog (#12810) (be41525)
- Querier: Split gRPC client into two. (#12726) (7b6f057)
- reporting: Report cpu usage (#12970) (87288d3)
- split detected fields queries (#12491) (6c33809)
- Support negative numbers in LogQL (#13091) (6df81db)
- Tune Patterns query drain instance (#13137) (30df31e)
- Update getting started demo to Loki 3.0 (#12723) (282e385)
- update helm chart to support distributed mode and 3.0 (#12067) (79b876b)
- Update Loki monitoring docs to new meta monitoring helm (#13176) (b4d44f8)
- Updated best practises for labels (#12749) (6ebfbe6)
- Updated SS and microservices deployment docs (#13083) (1b80458)
Bug Fixes
-
codecnot initialized in downstream roundtripper (#12873) (b6049f6) - Add a missing
continuein fuse which may cause incorrect bloom test result (#12650) (0d1ebeb) - Add copyString function to symbolizer to avoid retaining memory (#13146) (86b119a)
- add detected_level info when the info word appears on log message (#13218) (c9bfa3e)
- Add missing Helm helper loki.hpa.apiVersion (#12755) (3070ea7)
- Add missing OTLP endpoint to nginx config (#12709) (8096748)
- add missing parentheses in meta monitoring dashboards (#12802) (151d0a5)
- add retry middleware to the "limited" query roundtripper (#13161) (bb864b3)
- allow cluster label override in bloom dashboards (#13012) (987e551)
- blooms: bloomshipper no longer returns empty metas on fetch (#13130) (ad279e5)
- blooms: Clean block directories recursively on startup (#12895) (7b77e31)
- blooms: Correctly return unfiltered chunks for series that are not mapped to any block (#12774) (c36b114)
- blooms: Deduplicate filtered series and chunks (#12791) (3bf2d1f)
- blooms: Disable metas cache on bloom gateway (#12959) (00bdd2f)
- blooms: Do not fail requests when fetching metas from cache fails (#12838) (667076d)
- blooms: dont break iterator conventions (#12808) (1665e85)
-
blooms: Fix
partitionSeriesByDayfunction (#12900) (738c274) - blooms: Fix a regression introduced with #12774 (#12776) (ecefb49)
- blooms: Fix findGaps when ownership goes to MaxUInt64 and that is covered by existing meta (#12558) (0ee2a61)
- blooms: Fully deduplicate chunks from FilterChunkRef responses (#12807) (a0f358f)
- blooms: Handle not found metas gracefully (#12853) (37c8822)
- blooms: Reset error on LazyBloomIter.Seek (#12806) (76ba24e)
- change log level since this is a known case (#13029) (ca030a5)
- close res body (#12444) (616977a)
- Correctly encode step when translating proto to http internally (#13171) (740551b)
- crrect initialization of a few slices (#12674) (0eba448)
- Defer closing blocks iter after checking error from loadWorkForGap (#12934) (cb1f5d9)
- Do not filter out chunks for store when
From==ThroughandFrom==start(#13117) (d9cc513) - docs: broken link in getting started readme (#12736) (425a2d6)
- docs: Move promtail configuration to the correct doc (#12737) (1161846)
- Ensure Drain patterns are valid for LogQL pattern match filter (#12815) (fd2301f)
- errors reported by the race detector (#13174) (2b19dac), closes #8586
- Fix bloom deleter MR after merge (#13167) (c996349)
- Fix compactor matcher in the loki-deletion dashboard (#12790) (a03846b)
- Fix duplicate enqueue item problem in bloom download queue when do sync download (#13114) (f98ff7f)
- Fix for how the loop sync is done (#12941) (5cd850e)
- Fix incorrect sorting of chunks in bloom-filtered response since
ChunkRef.Cmpmethod is used in reverse (#12999) (670cd89) - Fix indentation of query range values in helm (#12577) (9823f20)
- Fix log level detection (#12651) (6904a65)
- Fix panic on requesting out-of-order Pattern samples (#13010) (2171f64)
- fix parsing of default per tenant otlp config (#12836) (7cc9a93)
- fix setting of info log level when trying to detect level from log lines (#12635) (0831802)
- Fix the lokitool imports (#12673) (6dce988)
- Fixes read & backend replicas settings (#12828) (d751134)
- helm: Set compactor addr for distributed mode. (#12748) (521d40a)
- helm: Fix GEL image tag, bucket name and proxy URLs (#12878) (67ed2f7)
- helm: fix query-frontend and ruler targetPort 'http-metrics' in Service template (#13024) (1ab9d27)
- helm: fix queryScheduler servicemonitor (#12753) (8101e21)
- helm: fixed ingress paths mapping (#12932) (5ada92b)
- helm: only default bucket names when using minio (#12548) (2e32ec5)
-
helm: Removed duplicate bucketNames from documentation and fixed key name
deploymentMode(#12641) (0d8ff9e) - incorrect compactor matcher in loki-deletion dashboard mixin (#12567) (006f88c)
- indexstats: do not collect stats from "IndexStats" lookups for other query types (#12978) (1f5291a)
- Ingester zoneAwareReplication (#12659) (9edb0ce)
- Introduce feature flag for [last|first]_over_time sharding. (#13067) (6e45550)
- Invalidate caches when pipeline wrappers are disabled (#12903) (a772ed7)
- ksonnet: Do not generate rbac for consul if you are using memberlist (#12688) (2d62fca)
- lambda-promtail, update s3 filename regex to allow finding of log files from AWS GovCloud regions (#12482) (7a81d26)
- loki version prefix in Makefile (#12514) (dff72d2)
- loki-operational.libsonnet (#12789) (51a841f)
- make detected fields work for both json and proto (#12682) (f68d1f7)
- make the tsdb filenames correctly reproducible from the identifier (#12536) (ec888ec)
- Missing password for Loki-Canary when loki.auth_enabled is true (#12411) (68b23dc)
- mixin generation when cluster label is changed (#12613) (1ba7a30)
- mixin: dashboards $__auto fix (#12707) (91ef72f)
- Mixins - Add missing log datasource on loki-deletion (#13011) (1948899)
- mixins: Align loki-writes mixins with loki-reads (#13022) (757b776)
- nix: lambda-promtail vendor hash (#12763) (ae180d6)
- not owned stream count (#13030) (4901a5c)
- operator: add alertmanager client config to ruler template (#13182) (6148c37)
- operator: Bump golang builder to 1.21.9 (#12503) (f680ee0)
- operator: Configure Loki to use virtual-host-style URLs for S3 AWS endpoints (#12469) (0084262)
- operator: Improve API documentation for schema version (#13122) (3a9f50f)
- operator: Use a minimum value for replay memory ceiling (#13066) (4f3ed77)
- Optimize regular initialization (#12926) (a46d14f)
- orFilters: fix multiple or filters would get wrong filtertype (#13169) (9981e9e)
- otel: Map 500 errors to 503 (#13173) (b31e04e)
- packaging: Require online network in systemd unit file for Loki and Promtail (#12741) (57f78b5)
- panics when ingester response is nil (#12946) (3cc28aa)
- promtail race fixes (#12656) (4e04d07)
- promtail; clean up metrics generated from logs after a config reload. (#11882) (39a7181)
- promtail: Fix bug with Promtail config reloading getting stuck indefinitely (#12795) (4d761ac)
- promtail: Fix UDP receiver on syslog transport (#10708) (a00f1f1)
- promtail: Handle docker logs when a log is split in multiple frames (#12374) (c0113db)
- properly return http status codes from ingester to querier for RPC function calls (#13134) (691b174)
- query sharding: Generalize avg -> sum/count sharding using existing binop mapper (#12599) (11e7687)
- regression: reverts grafana/loki#13039 to prevent use-after-free corruptions (#13162) (41c5ee2)
- Remove Hardcoded Bucket Name from EventBridge Example CloudFormation Template (#12609) (8c18463)
- remove unneccessary disk panels for ssd read path (#13014) (8d9fb68)
- remove unused parameter causing lint error (#12801) (33e82ec)
- spans: corrects early-close for a few spans (#12887) (93aaf29)
- temporarily moving from alloy -> alloy dev (#13062) (7ffe0fb)
- Track bytes discarded by ingester. (#12981) (88c6711)
- Update expected patterns when pruning (#13079) (2923a7d)
- update to build image 0.33.2, fixes bug with promtail windows DNS resolution (#12732) (759f42d)
- updated all dockerfiles go1.22 (#12708) (71a8f2c)
- Updated Loki Otlp Ingest Configuration (#12648) (ff88f3c)
- upgrade old plugin for the loki-operational dashboard. (#13016) (d3c9cec)
- Use an intermediate env variable in GH workflow (#12905) (772616c)
- Use to the proper config names in warning messages (#12114) (4a05964)
- workflows: don't run metric collector on forks (#12687) (7253444)
Performance Improvements
- blooms: Resolve bloom blocks on index gateway and shard by block address (#12720) (5540c92)
- Improve Detected labels API (#12816) (e7fdeb9)
- Introduce fixed size memory pool for bloom querier (#13039) (fc26431)
- Replace channel check with atomic bool in tailer.send() (#12976) (4a5edf1)
- TSDB: Add fast-path to
inversePostingsForMatcher(#12679) (402d1d7)
v3.0.1
Bug Fixes
- deps: bumped dependencies versions to resolve CVEs (#13833) (e13011d)
- Fix nil pointer dereference in bloomstore initialisation (#12869) (167b468), closes #12270
v3.0.0: Loki 3.0.0
Grafana Labs and the Loki team are excited to announce the release of Loki 3.0. Here's a summary of new enhancements and important fixes.
For a full list of all changes and fixes, refer to the CHANGELOG.
Features and enhancements
Key features in Loki 3.0.0 include the following:
-
Query acceleration with Bloom filters (experimental): This is designed to speed up filter queries, with best results for queries that are looking for a specific text string like an error message or UUID.
-
Native OTel Support: A simplified ingestion pipeline (Loki Exporter no longer needed) and a more intuitive query experience for OTel logs.
-
Helm charts: A major upgrade to the Loki helm chart introduces support for
Distributedmode (microservices), includes memcached by default, and includes several updates to configurations to improve Loki operations. -
Lambda/Promtail: support dropping labels (#10755) (ec54c72).
-
Docs improvements: All the Getting Started topics have been revised, including a new Quickstart to help new users get up and running with Loki faster.The Storage, Configuration Reference, and API documentation have been updated to reflect deprecated and removed code, configuration options, and API endpoints.
Deprecations
One of the focuses of Loki 3.0 was cleaning up unused code and old features that had been previously deprecated but not removed. Loki 3.0 removes a number of previous deprecations and introduces some new deprecations. Some of the main areas with changes include:
-
Deprecated storage options including the deprecation of the BoltDB store.
To learn more about breaking changes in this release, refer to the Upgrade guide.
Upgrade Considerations
The path from 2.9 to 3.0 includes several breaking changes. For important upgrade guideance, refer to the Upgrade Guide and the separate Helm Upgrade Guide.
Bug fixes
3.0.0 (2024-05-08)
- All lifecycler cfgs ref a valid IPv6 addr and port combination (#11121) (6385b19)
-
deps: update github.com/c2h5oh/datasize digest to
859f65c(main) (#10820) (c66ffd1) -
deps: update github.com/docker/go-plugins-helpers digest to
6eecb7b(main) (#10826) (fb9c496) -
deps: update github.com/grafana/gomemcache digest to
6947259(main) (#10836) (2327789) -
deps: update github.com/grafana/loki/pkg/push digest to
583aa28(main) (#10842) (02d9418) -
deps: update github.com/grafana/loki/pkg/push digest to
cfc4f0e(main) (#10946) (d27c4d2) -
deps: update github.com/grafana/loki/pkg/push digest to
e523809(main) (#11107) (09cb9ae) -
deps: update github.com/joncrlsn/dque digest to
c2ef48c(main) (#10947) (1fe4885) - deps: update module google.golang.org/grpc [security] (main) (#11031) (0695424)
- helm: bump nginx-unprivilege to fix CVE (#10754) (dbf7dd4)
- Parse JSON String arrays properly so string elements can be retrieved: MR #11921]
- promtail: correctly parse list of drop stage sources from YAML (#10848) (f51ee84)
- promtail: prevent panic due to duplicate metric registration after reloaded (#10798) (47e2c58)
- respect query matcher in ingester when getting label values (#10375) (85e2e52)
- Sidecar configuration for Backend (#10603) (c29ba97)
- tools/lambda-promtail: Do not evaluate empty string for drop_labels (#11074) (94169a0)
v2.9.10
Bug Fixes
v2.9.9
Features
v2.9.8
Bug Fixes
Configuration
-
If you want to rebase/retry this MR, check this box
This MR has been generated by Renovate Bot.