Loki v3.6 릴리스 노트
Grafana Labs와 Loki 팀이 Loki 3.6을 출시했어요. 이 문서에서는 새로 추가된 기능들과 중요한 수정 사항을 한눈에 정리해 드릴게요.
본문
Grafana Labs와 Loki 팀이 Loki 3.6 출시를 발표하게 되어 정말 기뻐요. 여기서는 새로운 개선 사항과 중요한 수정 사항을 요약해서 소개할게요.
모든 변경 사항과 수정 사항의 전체 목록은 CHANGELOG를 참고하세요.
{{< admonition type="note" >}} Loki Helm 차트에 관한 중요한 정보는 deprecations 섹션을 확인해 주세요. {{< /admonition >}}
Features and enhancements (기능 및 개선 사항)
Loki 3.6.0의 주요 기능은 다음과 같아요:
-
Horizontally scalable compactor (수평 확장 가능한 컴팩터): Loki의 컴팩터(Compactor)는 인덱스를 압축하고 보존 정책(retention)을 적용하는, 삭제 요청 처리까지 담당하는 싱글턴(singleton) 서비스예요. 지금까지는 수직으로만 확장할 수 있어서, 더 큰 셀에서 워크로드가 늘어날 때 처리 속도를 높이려고 투입할 수 있는 자원에 한계가 있었죠. 이번 릴리스에는 수평 확장이 가능한 컴팩터가 추가돼서, 대용량 삭제 요청을 더 빠르게 처리하거나 어떤 이유로 처리가 밀렸을 때 따라잡을 수 있게 됐어요. 참고로 수평 확장 컴팩터는 삭제 작업을 워커(worker)들에게 위임해요. Loki는 여전히 메인 컴팩터에서 압축(compaction)과 보존(retention) 적용을 수행해요. 자세한 내용은 문서를 참고하세요.
-
OTel: Loki가 OpenTracing 라이브러리 대신 OpenTelemetry 트레이싱 라이브러리를 사용하도록 리팩터링됐어요. (#17859). 참고로 Loki는 여전히
JAEGER_ env환경 변수로 설정할 수 있고, 여전히JAEGER_형식으로 트레이스를 내보내요. -
meta-monitoring: 메타 모니터링 관련 책임을 Grafana meta-monitoring Helm chart에서 널리 지원되는 Grafana Kubernetes Monitoring Helm chart로 옮겼어요. 이 작업은 두 개의 PR로 구현됐어요: Meta Monitoring Loki v2 (Part 1) - Telemetry Collection (#16665) (2d0bbfd)와 Meta Monitoring Loki v2 (Part 2) - Loki Mixin's (#16962) (93360f6).
-
Helm charts: Grafana Developer Advocates가 6월 말에 Loki Helm 차트 유지보수를 도와주겠다고 손을 든 Grafana Champion들로 구성된 커뮤니티 Helm 메인테이너 그룹 파일럿을 시작했어요. 그 덕분에 Loki Helm 차트의 정기 릴리스를 재개했고, 열려 있던 Loki Helm 차트 풀 리퀘스트 백로그를 약 150개에서 40개 미만으로 줄였어요. 최근 변경 사항에 대한 정보는 Helm 차트 CHANGELOG를 참고하세요.
-
UI: Loki UI를 Grafana 플러그인으로 옮겼어요. 기존의 정적 운영 UI(Operational UI)가 사라지는 건 아니고, 이 UI를 제공하던 모든 API는 Loki에 그대로 남아 있어요. 다만 UI를 제공하던 JavaScript는 Loki Operational UI Grafana 플러그인으로 이동했어요 (#19390).
-
Docs: 세 번째 클라우드 배포 가이드를 공개했어요. 이번엔 Google Cloud Platform용이에요 (#17503). 로그 관련 Learning paths 세 개의 링크를 Loki 문서에 추가했어요 (#17956). LogQL 쿼리 페이지를 개편했고 (#16286) LogQL 영상도 추가했어요 (#18111). Labels 주제에 주의(caution) 안내를 넣고, Loki가 레이블로 변환하는 기본 OpenTelemetry 리소스 속성을 수정하는 방법을 안내하는 새 주제를 추가했어요 (#17958). 캐싱 주제도 업데이트했어요 (#17420).
{{< admonition type="note" >}} 참고로 필요한 경우 문서 업데이트는 이전 릴리스에도 백포트(backport)돼요. {{< /admonition >}}
이 외에도 다음과 같은 개선 사항이 있어요:
- analytics: analytics proxy의 동작 방식을 변경 (#19098)
- API: 테넌트별 설정된 제한값을 반환하는 엔드포인트 추가 (#17101) (6818c90)
- API: 쿼리 분할(query splitting) 관련 Loki Improvement Document(LID) 추가 (#16958) (66f0f0b)
- compactor HS: 수평 확장 컴팩터로 삭제를 모니터링하는 대시보드 추가 (#18588) (10db8ab)
- compactor HS: 삭제 작업(deletion job)을 처리하는 잡 러너(job runner) 추가 (#18058)
- compactor HS: 잡 큐(job queue)와 삭제 잡 빌더(deletion job builder) 추가 (#17843)
- compactor HS: 수평 확장 컴팩터를 배포하기 위한 jsonnet 추가 (#18550) (5e28950)
- compactor HS: 삭제 매니페스트(deletion manifest) 처리를 마친 뒤 스토리지 업데이트를 적용하는 기능 추가 (#18294) (ba3c670)
- compactor HS: 컴팩터의 잡 큐에서 잡을 가져와 처리하는 워커 지원 추가 (#18165) (d05c4bc)
- compactor HS: 수평 확장 컴팩터가 잘 동작하도록 수정과 변경 사항 적용 (#18526) (000f90d)
- compactor HS: 컴팩터 수평 확장(HS)을 위해 인터페이스를 리팩터링하고 delete requests manager와 컴팩터를 연결 (#18326) (3646607)
- compactor HS: 처리된 세그먼트별 인덱스 업데이트를 매니페스트에 담아 오브젝트 스토리지에 저장 (#18212) (8007e22)
- compactor HS: 컴팩터 워커 설정을 조정하고 문서에 실험적 기능 경고 추가 (#18539) (5bf3f74)
- compactor HS: gRPC 기반 잡 큐 통신에 스트리밍 RPC 사용 (#18125) (385e317)
- compactor HS: 전체를 연결하고 몇 가지 메트릭 추가 (#18421) (bd29320)
- compactor HS: 진행 중인 작업 단위를 마무리하기 위해 남은 잡 수를 추적하는 메트릭 추가 (#19506)
- distributor: 압축하지 않은 메시지 크기 제한을 위한 MaxRecvMsgSize 설정 추가 (#16915) (1d99f4d)
- distributor: log_push_request가 설정됐을 때 수집(ingestion) 정책을 로그로 남김 (#18712) (0ec787f)
- distributor: 잘린(truncated) 로그 줄에 식별자를 표시 (#18262) (0ee8e76)
- distributor: distributor가 메타데이터 토픽으로 푸시하는 것을 중단 (#17525) (e0f015c)
- distributor: 테넌트 토픽 티(tenant topic tee) 제거 (#19082)
- fluentbit: fluent/fluent-bit을 v4로 업데이트해서 out_loki 플러그인에 구조화된 메타데이터(structured metadata) 지원 추가 (#17200) (f108e1c)
- fluentd: fluentd 플러그인에 'compress gzip' 설정 추가 (#18995)
- helm: Helm 차트에
block_builder설정 추가 (#17451) (a9808a1) - helm: memcached에
startupProbe추가(#19166) - helm: memcached exporter에
startupProbe추가(#19165) - helm: single binary StatefulSet에 설정 가능한 livenessProbe 추가(#19072)
- helm: 누락된 모든 리소스에 dnsconfig 추가(#18903)
- helm: Loki Helm 차트의 사이드카 컨테이너에 FOLDER_ANNOTATION 로직을 추가해서 멀티 테넌트 알림(alerting) 구성을 더 쉽게 만듦 (#13289) (833fcbc)
- helm: admin-api에 헬스 프로브(health probes) 추가 (#18546) (358228a)
- helm: bloom-builder에 헬스 프로브 추가 (#18549)
- helm: bloom-gateway에 헬스 프로브 추가(#18551)
- helm: bloom-planner에 헬스 프로브 추가(#18552)
- helm: gateway 컴포넌트에 헬스 프로브 추가(#18545)
- helm: backend의 loki에 헬스 프로브 추가(#18548)
- helm: nginx 설정에 location 스니펫 추가 (#18105) (5737751)
- helm: 누락됐던 revisionHistoryLimit 추가 (#18638) (d0e0d1a)
- helm: affinity와 topology spread 제약 조건에 더 세밀한 설정 추가(#19061)
- helm: namespaceOverride 추가(#18707)
- helm: 테스트 커버리지를 높이려고 non-default-values.yaml 추가 (#18360) (b0e04f4)
- helm: canary에서 daemonset 대신 deployment 타입을 사용할 수 있는 옵션 추가 (#17364) (a6563cf)
- helm: patternIngester에 PDB(Pod Disruption Budget) 추가 (#17058) (7fad38d)
- helm: 모든 memcached 컴포넌트에 readiness와 liveness 지원 추가 (#18525) (9b54d9f)
- helm: memcached에 readiness 프로브 추가 (#15609) (6ed1461)
- helm: loki-canary deployment에 replicas 추가 (#19095)
- helm: loki-sc-rules에 startupProbe 추가 (#18547) (121e84e)
- helm: 커스텀 알림 규칙 어노테이션(annotation) 지원 추가 (#19193)
- helm: pattern_ingester와 ingester_client에 tpl 지원 추가 (#16759) (901b2b0)
- helm: service-distributor에 trafficDistribution 추가 (#17742) (78f154f)
- helm: tokengen rbac 컴포넌트를 선택적으로 비활성화할 수 있는 플래그 추가 (#15882) (10536b2)
- helm: 서비스 타입을 설정할 수 있게 허용 (#18708)
- helm: user namespace 사용을 허용 (#18661)
- helm: 외부 memcached 구성을 허용 (#17432) (013aa17)
- helm: extraObjects를 리스트 또는 딕셔너리로 정의할 수 있게 허용.(#13252)
- helm: 비밀번호 대신 테넌트 비밀번호 해시를 넘길 수 있게 허용 (#17049) (20b97f7)
- helm: ingester에 레이블을 설정할 수 있게 허용 (#18536) (ab426be)
- helm: ruler 파드에 rules 사이드카 활성화 (#17231) (2c5ad02)
- helm: 모든 스토리지 설정을 외부로 노출 (#18509) (db5e021)
- helm: volumeClaimTemplates에 레이블 노출 (#13317) (cdefbbf)
- helm: 순수 ingress로 Loki UI 노출 (#18400) (21f3d09)
- helm: Helm 이슈 템플릿 추가 (#18693) (e0ec815)
- helm: l2 chunksCache memcache 지원 구현 (#17556) (039e7c1)
- helm: enterprise-provisioner를 Loki Helm 차트에 통합 (#17616)
- helm: 모든 PVC와 StatefulSet의 영구 볼륨(persistence) access mode를 수정 가능하게 변경 (#13474)
- helm: StatefulSet을 삭제할 때만 PVC를 삭제하고, 스케일링할 때는 삭제하지 않음 (#19097)
- helm: object_store에서 s3/gcs/azure 설정을 모두 우회(bypass)하는 기능 지원 (#17597) (d6c2a8e)
- helm: Loki ruler 스토리지 설정을 분리해서 구성하는 기능 지원 (#18510)
- helm: loki.operational_config 템플릿 지원 (#17045) (078f353)
- helm: Grafana Loki 버전을 3.5.3으로 업데이트 (#18619) (907bb61)
- helm: 차트의 Loki 버전 업데이트 (#18447) (e2770ae)
- helm: memcached 서비스의 targetPort에 네임드 포트(named ports) 사용 (#18990)
- helm: volumeClaimTemplates가 바뀌면 StatefulSet을 삭제 (#19217)
- helm: loki-canary DaemonSet에 affinity 속성 추가 (#17720)
- ingester: ingester_chunks_flush_requests_total 추가 (#18696)
- ingester: 정책별(policy)로 재정의할 수 있는 스트림 제한 추가 (#18994)
- kafka: 컴포넌트에서 여러 Kafka 클라이언트 지원 (#17757)
- kafka: partition-ingester 푸시 지연 시간 히스토그램 추가 (#17385) (01cf36d)
- kafka: 읽기/쓰기 지연 시간용 Kafka 히스토그램을 선택적으로 활성화 (#17089) (e962398)
- kafka: 메트릭 수집을 개선하려고 kafka/client 리팩터링 (#17308) (ab65ac5)
- kafka: Kafka에서 레코드를 소비(consume)하는 기능 지원 (#17691)
- limits: allowlist로 테넌트 제한 엔드포인트를 필터링하는 기능 추가 (#18521) (73de7b5)
- logcli: logcli에 delete 명령어 추가 (#18375) (f38950a)
- logcli: logcli 사용 중 오류를 진단할 때 도움이 되는
--log.level파라미터 추가. (#19136) - logs drilldown: 드릴다운(drilldown)을 위해 메트릭 쿼리의 부분 결과(partial results) 반환 (#18286) (c0c2265)
- logs drilldown: 드릴다운 설정 엔드포인트 추가 (#19028)
- logs drilldown:
unwrap을 프로젝션(projection)으로 구현 (#19409) - logs drilldown: 패턴(pattern)을 집계 메트릭으로 영속 저장 (#17737)
- logs drilldown: 영속 저장된 패턴 쿼리 (#17980)
- loki-canary: 배치 로그 푸시(batched log push)를 지원하도록 loki canary 업데이트 (#17558)
- metrics: push.go에 distributor 지연(lag) 카운터 추가 (#18012)
- metrics: distributor 푸시 로깅에 User-Agent 추가 (#17764)
- mixins: Thanos 대시보드를 비활성화할 수 있게 허용하고 대시보드 파일 이름 수정 (#18749)
- operator: LokiIngesterFlushFailureRateCritical 알림 추가 (#18698)
- operator: LokiStack이 준비 상태가 되지 않을 때 경고 알림 추가 (#19258)
- operator: S3 시크릿에 virtual-host-style을 설정할 수 있게 허용 (#17363) (c4dace5)
- operator: 리소스 요청(requests)을 제한(limits)으로 사용할 수 있게 허용 (#17484) (0b2bae8)
- operator: LokiStack과 함께 네트워크 정책(network policies) 배포 (#19099)
- operator: LokiStack 권한 부여를 확장해 OTel 시맨틱 지원 (#16031)
- operator: S3 검증이 URL 경로를 포함하는 엔드포인트를 거부하도록 수정 (#19356)
- operator: Loki operand를 v3.5.5로 업데이트 (#19187)
- pattern ingester: 패턴 인제스터가 감지된 레벨(level)을 구조화된 메타데이터로 푸시 (#16924) (66033bb)
- pattern ingester: 볼륨 기반 패턴 필터링 구현 (#18838)
- policies: 기본 수집 정책(ingestion policy) 매핑을 테넌트별 매핑과 병합 (#18926)
- thanos: storage_prefix 설정에 대시(dash) 허용 (#16934) (c01d9c7)
3.6.4 (2025-01-21)
3.6.5 (2025-02-05)
3.6.16 (2026-08-27)
Deprecations (지원 중단)
3.6.5 (2025-02-05)
-
Simple Scalable Deployment (SSD) 모드가 지원 중단(deprecated)되고 있어요. 지원 중단 공지는 Helm 차트 버전 6.52.0의 CHANGELOG에 올라왔어요. 지원 중단 시기는 아직 확정되지 않았지만(TBD), Loki 4.0이 출시되기 전에는 이뤄질 예정이에요.
-
Loki Helm 차트 지원 중단: 다음 커뮤니티 관리 Helm 차트들이 지원 중단됐어요:
{{< admonition type="note" >}} 2025년 6월, Grafana는 Grafana Champion 세 명을 영입해서 Loki Helm 차트를 관리하는 세 달짜리 파일럿 프로그램을 시작했어요. 이 파일럿은 성공적이어서 더 많은 Grafana Champion을 끌어모았고, Champion들이 차트 유지보수를 완전히 넘겨달라고 요청하는 결과로 이어졌어요. grafana-community/helm-charts 저장소는 2026년 1월 30일에 시작됐어요. 2026년 3월 16일부터 Grafana Loki Helm 차트는 새 저장소인 grafana-community/helm-charts로 포크(fork)될 예정이에요. grafana/helm-charts#3955에서 언급했듯이, 이 변경의 목적은 개발 속도를 높이고 커뮤니티가 직접 유지보수할 수 있게 하는 거예요. Champion들이 이 전환이 최대한 매끄럽게 진행되도록 노력할 거예요. (Grafana Champions) {{< /admonition >}}
3.6.0 (2025-11-17)
Loki 3.0의 주요 목표 중 하나는 예전에 지원 중단 예고만 해두고 없애지 않았던 미사용 코드와 오래된 기능을 정리하는 것이었어요. Loki 3.0은 기존 지원 중단 항목 여럿을 제거했고, 새로운 지원 중단 항목도 몇 가지 도입했어요. 변경이 있던 주요 영역은 다음과 같아요:
-
Grafana Agent - Grafana Agent의 장기 지원은 2025년 10월 31일에 종료됐어요. Grafana Alloy로 마이그레이션하는 방법은 마이그레이션 문서를 참고하세요.
-
Promtail은 코드가 Grafana Alloy에 병합됐기 때문에 지원 중단됐어요. 상용 지원은 2026년 2월 28일에 종료돼요. 마이그레이션 문서와 Promtail 설정을 Alloy 설정으로 변환하는 유틸리티는 Alloy 문서에서 찾을 수 있어요. 참고로 이 지원 중단에는 lambda-promtail 클라이언트는 포함되지 않아요.
-
BoltDB 스토어 지원 중단을 포함한 지원 중단 스토리지 옵션들.
이 릴리스의 주요 변경(breaking changes) 사항을 더 알고 싶다면 업그레이드 가이드를 참고하세요.
Upgrade Considerations (업그레이드 시 유의 사항)
중요한 업그레이드 안내는 업그레이드 가이드를 참고하세요.
- BREAKING CHANGE - Loki UI: Loki UI가 Grafana 플러그인으로 이동했어요. Helm 차트에서 UI를 활성화하면 이제 플러그인이 필요로 하는 API만 활성화되고, 그 API는 querier에서 호스팅돼요. 게이트웨이는 이제 모든 UI 요청을 querier로 포워딩해요.(#19390)
Bug fixes (버그 수정)
3.6.17 (2026-09-09)
- security/HIGH/pkg/push: google.golang.org/grpc 모듈을 v1.83.1로 업데이트 (#24330) (d8d78f6).
- security/HIGH/pkg/push: google.golang.org/grpc 모듈을 v1.83.2로 업데이트 (#24444) (6d21d6b).
- security/HIGH/: google.golang.org/grpc 모듈을 v1.83.1로 업데이트 (#24329) (ed9df58).
- security/HIGH/: google.golang.org/grpc 모듈을 v1.83.2로 업데이트 (#24430) (ee0ef56).
- security/MEDIUM/: github.com/containerd/containerd/v2 모듈을 v2.0.12로 업데이트 (#24461) (7fa1224).
- security/UNKNOWN/: golang.org/x/crypto 모듈을 v0.55.0으로 업데이트 (#24256) (85b2d4f).
- security/UNKNOWN/: golang.org/x/crypto 모듈을 v0.56.0으로 업데이트 (#24336) (57bc922).
- security/UNKNOWN/: golang.org/x/mod 모듈을 v0.40.0으로 업데이트 (#23963) (c08bf30).
3.6.16 (2026-08-27)
- security/UNKNOWN/: go.etcd.io/etcd/client/pkg/v3 모듈을 v3.5.33으로 업데이트 (#24062) (bf4b367).
- storage: PutObject에서 aws-chunked를 피하려고 SHA-256을 미리 계산 (#24214) (0a29895).
3.6.15 (2026-08-05)
3.6.14 (2026-08-04)
- ci: deb/rpm 패키징 수정 사항을 release-3.6.x로 백포트 (#23680) (#23722) (d7ee4de)
- ingester: WAL 리플레이 hang 수정 사항을 release-3.6.x로 백포트 (#21176) (#23630) (355e2f3)
- security/UNKNOWN/: github.com/klauspost/compress 모듈을 v1.18.7로 업데이트 (release-3.6.x) (#23614) (8308a12)
- security/UNKNOWN/cmd/chunks-inspect: github.com/klauspost/compress 모듈을 v1.18.7로 업데이트 (release-3.6.x) (#23615) (a6cc2e5)
- security/UNKNOWN/cmd/dataobj-inspect: github.com/klauspost/compress 모듈을 v1.18.7로 업데이트 (release-3.6.x) (#23616) (a71c910)
- security/UNKNOWN/operator: github.com/klauspost/compress 모듈을 v1.18.7로 업데이트 (release-3.6.x) (#23618) (59970a9)
3.6.13 (2026-07-23)
- ci: Loki 3.6의 operator-images에 대한 zizmor 발견 사항 수정 (#22821) (050f742)
- ci: Helm CI 경고 수정 (#22606) (4bc2586)
- deps: GCS Exists 수정 사항이 포함되도록 objstore 업데이트 (#23381) (87383d8)
- security/CRITICAL/clients/cmd/fluentd/docker: fluentd 의존성을 v1.19.3으로 업데이트 (release-3.6.x) (#22694) (692f2b1)
- security/HIGH/: CVE-2026-39822와 CVE-2026-42505를 해결하려고 Go를 1.26.5로 올림 (#23398) (fc478e1)
- security/HIGH/: golang.org/x/net, golang.org/x/text, google.golang.org/grpc 업데이트 (70f75b7)
- security/HIGH/pkg/push: google.golang.org/grpc 모듈을 v1.82.1로 업데이트 (70f75b7)
- security/UNKNOWN/: github.com/containerd/containerd/v2 모듈을 v2.0.10으로 업데이트 (release-3.6.x) (#22479) (697bd83)
- security/UNKNOWN/cmd/chunks-inspect: go toolchain 디렉티브를 v1.25.12로 업데이트 (release-3.6.x) (#23131) (b327439)
- security/UNKNOWN/pkg/push: golang.org/x/net 모듈을 v0.56.0으로 업데이트 (70f75b7)
- security/UNKNOWN/pkg/push: golang.org/x/text 모듈을 v0.39.0으로 업데이트 (70f75b7)
- security: 보안 업데이트를 release-3.6.x로 백포트 (#23403) (70f75b7)
3.6.12 (2026-06-24)
- deps:
go.opentelemetry.io/otel/sdk를 v1.43.0으로 업데이트 (#21480) (47fb29e). - deps:
golang.org/x/crypto를 v0.52.0으로 업데이트 (#22212) (424e5ff). - deps:
golang.org/x/net을 v0.55.0으로 업데이트 (#22213) (90ae8f3). - deps:
golang.org/x/sys를 v0.44.0으로 업데이트 (#22214) (49b9a22). - deps: cmd/dataobj-inspect의
golang.org/x/sys를 v0.44.0으로 업데이트 (release-3.6.x) (#22215) (c696c66). - deps: cmd/segment-inspect의
golang.org/x/crypto를 v0.52.0으로 업데이트 (release-3.6.x) (#22216) (807ffd7). - deps: cmd/segment-inspect의
golang.org/x/net을 v0.55.0으로 업데이트 (release-3.6.x) (#22217) (7081875). - deps: cmd/segment-inspect의
golang.org/x/sys를 v0.44.0으로 업데이트 (release-3.6.x) (#22218) (36deca1). - deps: pkg/push의
golang.org/x/net을 v0.55.0으로 업데이트 (release-3.6.x) (#22224) (0c53ce1). - deps: cmd/chunks-inspect의 go toolchain을 v1.25.11로 업데이트 (release-3.6.x) (#22202) (90e12c9).
- deps: cmd/segment-inspect의 go toolchain을 v1.25.11로 업데이트 (release-3.6.x) (#22203) (2c67a33).
- security/HIGH:
github.com/containerd/containerd/v2를 v2.0.9로 업데이트 (#22204) (ed38a68). - security/HIGH: cmd/segment-inspect의
github.com/prometheus/prometheus를 v0.311.3으로 업데이트 (release-3.6.x) (#22205) (bfd37e4). - security/HIGH: cmd/segment-inspect의
go.opentelemetry.io/otel을 v1.41.0으로 업데이트 (release-3.6.x) (#22206) (0ed7bce). - security/MEDIUM: cmd/dataobj-inspect의
github.com/grafana/loki/v3를 v3.6.4로 업데이트 (release-3.6.x) (#22209) (d6117ed). - security/MEDIUM: cmd/segment-inspect의
github.com/grafana/loki/v3를 v3.6.4로 업데이트 (release-3.6.x) (#22210) (186b9a9).
3.6.11 (2025-05-13)
- deps: release 3.7.x의 CVE 수정 사항 (#21771) (bb4c5d8)
- deps: github.com/aws/aws-sdk-go-v2/service/s3 모듈을 v1.97.3으로 업데이트 (#21457) (7bc9450).
- ruler: validation scheme이 설정되지 않아 발생하던 ruler 패닉 수정 (#21401) (cf65729).
- storage: Object Lock 버킷을 위해 PutObject에 SHA-256 체크섬 첨부 (#21849) (7df13d9).
3.6.10 (2025-04-03)
3.6.9 (2025-04-01)
이 릴리스는 존재하지 않아요. 릴리스 파이프라인을 트리거했는데, 파이프라인이 만우절 장난을 치기로 결심했는지 릴리스를 만들어내지 않았어요.
3.6.8 (2025-03-25)
- deps:
go.opentelemetry.io/otel/sdk를 v1.38.0에서 v1.40.0으로 업그레이드 (#21115) (d1ab148). - deps: Go를 1.25.8로 업그레이드 (release-3.6.x) (#21240) (10d2666).
- deps: querytee/promtail에서 사용하는 Go를 3.6으로 업그레이드 (#21244) (41a4e0c).
- deps: fluent-bit에 다른 debian 버전 사용 (#21247) (138c391).
- deps: github.com/buger/jsonparser 모듈을 v1.1.2로 업데이트 (#21201) (3185466).
- deps: go.opentelemetry.io/otel/sdk 모듈을 v1.40.0으로 업데이트 (#20887) (d267ad3).
- deps: google.golang.org/grpc 모듈을 v1.79.3으로 업데이트 (#21193) (87dff41).
3.6.7 (2025-02-23)
3.6.6 (2025-02-16)
3.6.5 (2025-02-05)
- deps: 3.6.x의 go 버전 올림 (#20667) (b06b508)
- logql: LineFilterLabelFilter.String() regexp의 올바른 구분자 (backport release-3.6.x) (#20649) (9d5fb5f)
3.6.4 (2025-01-21)
- deps: Otel 충돌을 해결하려고 dskit 업데이트 (#20368) (fb05a36).
- distributor: gzip 수정 사항을 release 3.6.x로 백포트 (#20514) (d805266).
3.6.3 (2025-12-11)
- deps: Go 1.25로 업데이트 (#20204).
- storage: 설정 체인에 이미 지정돼 있으면 S3 region을 덮어쓰지 않음 (backport release-3.6.x) (#20128) (38582ac).
- storage: S3 클라이언트 설정의 회귀(regression) 수정 (backport release-3.6.x) (#20118) (7d8176f).
3.6.2 (2025-11-25)
- deps: Loki 3.6.1 CVE 업데이트.
3.6.1 (2025-11-21)
- docker: Docker 시작에 필요한 권한 누락 (#19948) (48b507f).
- docker: Loki Dockerfile의 WORKDIR를 root로 설정 (#19952) (6040a09).
3.6.0 (2025-11-17)
- aggregated metrics: /series와 /labels에서
__aggregated_metric__숨김. logcli series --analyze-labels 같은 도구로 카디널리티 분석을 하는 분들의 혼란을 줄여줄 거예요. (#14677) (4b0aaaa) - build: purgo 패키지 업데이트 (#17807)
- build: dockerfile에서 busybox 제거 (#19502) {{< admonition type="note" >}} 이제 컨테이너에 셸로 exec할 수 없어요. 자세한 내용은 업그레이드 주제를 참고하세요. {{< /admonition >}}
- build: docker 빌드에서 UI 제거 (#19425)
- build: RPM 서명 설정 (#19476)
- build: ckit 업데이트 (#18997)
- chunkenc: 플러시된 청크에서 symbolizer를 로드할 때 메모리 할당 피하기 (#17953)
- ci: staticcheck 린터의 deprecation 오류 수정 (#17210) (cfe3675)
- ci: lambda-promtail 이미지 빌드 수정 (#18443) (8f0ba2e)
- ci: 잘못된 형식으로 추가됐던 워크플로 타임아웃 수정 (#18348) (53ba9c7)
- ci: jsonnet.json lockfile에서 releaseLibRef 읽기 (#18538) (26417b5)
- compactor: 응답 헤더에 요청 ID 반환 (#19444)
- compactor: delete requests manager의 processedSeries에 대한 동시 맵 접근 수정 (#17469) (32c5088)
- compactor: 서로 다른 샤드로 동일한 요청을 처리할 때의 타임아웃과 series 진행 마커 수정 (#17125) (288ec8c)
- compactor: 중복 시리즈 검사를 호출 스택 위로 올려서 retention이 활성화됐을 때의 문제 수정 (#17663) (a5e95ba)
- compactor: 삭제 시리즈 진행 추적(deletion series progress tracking) 연결 (#17099) (db59d0e)
- compactor: 삭제 요청을 나열할 때 이미 병합(consolidated)된 삭제 요청을 다시 병합하려고 시도하지 않음 (#18544) (8054076)
- compactor: 요청된 테넌트의 삭제 요청만 반환하도록 보장 (#18589) (cdb190b)
- compactor: 중복 삭제 요청 처리 수정 (#18460) (255fce2)
- compactor: retention.go의 린트 실패 수정 (#17894)
- compactor: 커스텀 objectExists 함수를 사용해 Thanos 오브젝트 클라이언트의 버그 우회 (#18820)
- compactor: 라인 필터로 청크 전체가 삭제됐을 때 스토리지 업데이트 적용 중 발생하는 패닉 수정 (#19262)
- compactor: 요청 실패 처리를 위해 로드할 때 삭제 요청 배치를 비우도록 수정 (#17810)
- config_wrapper: common의
instance_enable_ipv6를 모든 컴포넌트에 적용 (#18254) (5bc5853) - deps: Go 1.24.2로 업데이트 (#17804)
- deps: go toolchain을 1.24.6으로 업데이트 (#19449)
- deps: CVE를 제거하려고 mapstructure 의존성 패치 (#19447)
- deps: ignore에서 워크스페이스 파일 제거 후 vendor 재생성 (#17234)
- deps: dskit 의존성 업데이트 (#18711) (19233d0)
- deps: linux/arm 빌드를 고치려고 dskit 업데이트 (#18715) (f39fc1e)
- deps: @hookform/resolvers 의존성을 v5.2.2로 업데이트 (main) (#19276)
- deps: @radix-ui.react-checkbox 의존성을 v1.3.3으로 업데이트 (main) (#18836)
- deps: @radix-ui/react-collapsible 의존성을 v1.1.8로 업데이트 (main) (#17382) (0a4aec6)
- deps: @radix-ui.react-dialog 의존성을 v1.1.15로 업데이트 (main) (#18841)
- deps: @radix-ui.react-dropdown-menu 의존성을 v2.1.16으로 업데이트 (main) (#18845)
- deps: @radix-ui.react-hover-card 의존성을 v1.1.15로 업데이트 (main)(#18849)
- deps: @radix-ui/react-label 의존성을 v2.1.7로 업데이트 (main) (#17877)
- deps: @radix-ui.react-popover 의존성을 v1.1.15로 업데이트 (main) (#18850)
- deps: @radix-ui/react-progress 의존성을 v1.1.7로 업데이트 (main) (#17879)
- deps: @radix-ui.react-scroll-area 의존성을 v1.2.10으로 업데이트 (main) (#18852)
- deps: @radix-ui.react-select 의존성을 v2.2.6으로 업데이트 (main) (#18853)
- deps: @radix-ui/react-separator 의존성을 v1.1.7로 업데이트 (main) (#17882)
- deps: @radix-ui/react-slot 의존성을 v1.2.3으로 업데이트 (main) (#17883)
- deps: @radix-ui.react-switch 의존성을 v1.2.6으로 업데이트 (main)(#18854)
- deps: @radix-ui/react-tabs 의존성을 v1.1.9로 업데이트 (main) (#17389) (23a2f2d)
- deps: @radix-ui/react-toast 의존성을 v1.2.7로 업데이트 (main) (#17148) (1a1cbb3
- deps: @radix-ui.react-toggle 의존성을 v1.1.10으로 업데이트 (main)(#18859)
- deps: @radix-ui.react-toggle-group 의존성을 v1.1.11로 업데이트 (main) (#18860)
- deps: @radix-ui.react-tooltip 의존성을 v1.2.8로 업데이트 (main) (#18862)
- deps: @tanstack.react-query 의존성을 v5.85.5로 업데이트 (main) (#18962)
- deps: @tanstack/react-query-devtools 의존성을 v5.85.5로 업데이트 (main) (#18963)
- deps: @types/lodash 의존성을 v4.17.20으로 업데이트 (main) (#18305) (90ca918)
- deps: cloud.google.com/go/bigtable 모듈을 v1.40.1로 업데이트 (main) (#19337)
- deps: cloud.google.com/go/pubsub 모듈을 v1.49.0으로 업데이트 (main) (#17187) (cbd73d0)
- deps: cloud.google.com/go/storage 모듈을 v1.57.0으로 업데이트 (main) (#19312)
- deps: dario.cat/mergo 모듈을 v1.0.2로 업데이트 (main) (#17651) (bb8a9d9)
- deps: github.com.prometheus/otlptranslator 모듈을 v0.0.2로 업데이트 (main) (#18782)
- deps: github.com/alecthomas/chroma/v2 모듈을 v2.20.0으로 업데이트 (main) (#18710) (c8e87dd)
- deps: github.com/alicebob/miniredis/v2 모듈을 v2.35.0으로 업데이트 (main) (#18029)
- deps: github.com/apache/arrow-go/v18 모듈을 v18.4.0으로 업데이트 (main) (#18519) (600fc9e)
- deps: github.com/aws/aws-lambda-go 모듈을 v1.49.0으로 업데이트 (main) (#18036)
- deps: github.com/aws/aws-sdk-go 모듈을 v1.55.7로 업데이트 (main) (#17402) (06a803d)
- deps: github.com/aws/aws-sdk-go-v2 모듈을 v1.36.6으로 업데이트 (main) (#18506) (1d51304)
- deps: github.com/aws/aws-sdk-go-v2/config 모듈을 v1.29.18로 업데이트 (main) (#18507) (4ea7409)
- deps: github.com/aws/aws-sdk-go-v2/credentials 모듈을 v1.18.16으로 업데이트 (main) (#19352)
- deps: github.com/aws/aws-sdk-go-v2/service/dynamodb 모듈을 v1.51.0으로 업데이트 (main) (#19388)
- deps: github.com/aws/aws-sdk-go-v2/service/s3 모듈을 v1.84.1로 업데이트 (main) (#18508) (4fdae62)
- deps: github.com/baidubce/bce-sdk-go 모듈을 v0.9.245로 업데이트 (main) (#19278)
- deps: github.com/bmatcuk/doublestar/v4 모듈을 v4.9.1로 업데이트 (main) (#18599) (17b377f)
- deps: github.com/charmbracelet/bubbles 모듈을 v0.21.0으로 업데이트 (main) (#17191) (3e9c07e)
- deps: github.com/charmbracelet/bubbletea 모듈을 v1.3.10으로 업데이트 (main) (#19279)
- deps: github.com/coder/quartz 모듈을 v0.2.1로 업데이트 (main) (#17922) (3cb216c)
- deps: github.com/docker/docker 모듈을 v28.5.0+incompatible로 업데이트 (main) (#19414)
- deps: github.com/fsnotify/fsnotify 모듈을 v1.9.0으로 업데이트 (main) (#17192) (eb4b651)
- deps: github.com/fsouza/fake-gcs-server 모듈을 v1.52.3으로 업데이트 (main) (#18999)
- deps: github.com/go-logfmt/logfmt 모듈을 v0.6.1로 업데이트 (main) (#19412)
- deps: github.com/grafana/loki/v3 모듈을 v3.5.5로 업데이트 (main) (#18444)
- deps: github.com/grpc-ecosystem/go-grpc-middleware/v2 모듈을 v2.3.2로 업데이트 (main) (#17652) (988857e)
- deps: github.com/hashicorp/consul/api 모듈을 v1.32.1로 업데이트 (main) (#17653) (44b9b64)
- deps: github.com/heroku/x 모듈을 v0.5.2로 업데이트 (main) (#18809)
- deps: github.com/ibm/go-sdk-core/v5 모듈을 v5.21.0으로 업데이트 (main) (#18587) (86a31ec)
- deps: github.com/ibm/ibm-cos-sdk-go 모듈을 v1.12.3으로 업데이트 (main) (#19281)
- deps: github.com/ibm/sarama 모듈을 v1.46.1로 업데이트 (main) (#19282)
- deps: github.com/minio/minio-go/v7 모듈을 v7.0.95로 업데이트 (main) (#18514) (70c176c)
- deps: github.com/ncw/swift/v2 모듈을 v2.0.4로 업데이트 (main) (#18011)
- deps: github.com/oklog/run 모듈을 v1.2.0으로 업데이트 (main) (#18263) (3011a6c)
- deps: github.com/opentracing-contrib/go-grpc 모듈을 v0.1.2로 업데이트 (main) (#17164) (23b47ce)
- deps: github.com/oschwald/geoip2-golang 모듈을 v1.13.0으로 업데이트 (main) (#18354)
- deps: github.com/parquet-go/parquet-go 모듈을 v0.25.1로 업데이트 (main) (#18013)
- deps: github.com/pressly/goose/v3 모듈을 v3.26.0으로 업데이트 (main) (#19417)
- deps: github.com/prometheus/client_golang 모듈을 v1.23.0으로 업데이트 (main) (#18674) (07a627a)
- deps: github.com/prometheus/client_model 모듈을 v0.6.2로 업데이트 (main) (#17171) (fa84382)
- deps: github.com/prometheus/common 모듈을 v0.65.0으로 업데이트 (main) (#18196) (3ad1077)
- deps: github.com/prometheus/prometheus 모듈을 v0.304.2로 업데이트 (main) (#18248) (b2e1d7f)
- deps: github.com/prometheus/sigv4 모듈을 v0.2.1로 업데이트 (main) (#18454) (9ea365a)
- deps: github.com/redis/go-redis/v9 모듈을 v9.12.1로 업데이트 (main) (#18218)
- deps: github.com/shirou/gopsutil/v4 모듈을 v4.25.9로 업데이트 (main) (#19366)
- deps: github.com/sony/gobreaker/v2 모듈을 v2.3.0으로 업데이트 (main) (#19418)
- deps: github.com/spf13/afero 모듈을 v1.15.0으로 업데이트 (main) (#19317)
- deps: github.com/stretchr/testify 모듈을 v1.11.1로 업데이트 (main) (#19042)
- deps: github.com/twmb/franz-go 모듈을 v1.19.5로 업데이트 (main) (#18039)
- deps: github.com/twmb/franz-go/pkg/kadm 모듈을 v1.16.1로 업데이트 (main) (#18733)
- deps: github.com/twmb/franz-go/pkg/kmsg 모듈을 v1.11.2로 업데이트 (main) (#17258) (7c47a3e)
- deps: github.com/twmb/franz-go/plugin/kotel 모듈을 v1.6.0으로 업데이트 (main) (#17194) (9491fbb)
- deps: github.com/twmb/franz-go/plugin/kprom 모듈을 v1.3.0으로 업데이트 (main) (#18596) (5405a83)
- deps: github.com/workiva/go-datastructures 모듈을 v1.1.6으로 업데이트 (main) (#19287)
- deps: go.etcd.io/bbolt 모듈을 v1.4.3으로 업데이트 (main) (#18973)
- deps: go.opentelemetry.io/collector/pdata 모듈을 v1.43.0으로 업데이트 (main) (#19419)
- deps: go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc 모듈을 v0.63.0으로 업데이트 (main) (#18455)
- deps: go.opentelemetry.io/contrib/instrumentation/net/http/httptrace/otelhttptrace 모듈을 v0.63.0으로 업데이트 (main) (#19324)
- deps: go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp 모듈을 v0.63.0으로 업데이트 (main) (#19327)
- deps: golang.org/x.crypto 모듈을 v0.41.0으로 업데이트 (main) (#18767)
- deps: golang.org/x.net 모듈을 v0.43.0으로 업데이트 (main) (#18769)
- deps: golang.org/x.crypto 모듈을 v0.40.0으로 업데이트 (main) (#18406) (8fa91c6)
- deps: golang.org/x.net 모듈을 v0.45.0으로 업데이트 (main) (#19420)
- deps: golang.org/x.oauth2 모듈을 v0.31.0으로 업데이트 (main) (#19329)
- deps: golang.org/x.sync 모듈을 v0.16.0으로 업데이트 (main) (#18383) (6b1204a)
- deps: golang.org/x/sys 모듈을 v0.35.0으로 업데이트 (main) (#18759) (9c748e0)
- deps: golang.org/x/text 모듈을 v0.28.0으로 업데이트 (main) (#18762) (e6fb85c)
- deps: golang.org/x/time 모듈을 v0.13.0으로 업데이트 (main) (#19330)
- deps: google.golang.org/api 모듈을 v0.252.0으로 업데이트 (main) (#19421)
- deps: google.golang.org/grpc 모듈을 v1.75.1로 업데이트 (main) (#19288)
- deps: google.golang.org/protobuf 모듈을 v1.36.9로 업데이트 (main) (#19289)
- deps: k8s.io/apimachinery 모듈을 v0.33.4로 업데이트 (main) (#18868)
- deps: lucide-react 의존성을 ^0.544.0으로 업데이트 (main) (#19310)
- deps: react 의존성을 v19.1.0으로 업데이트 (main) (#16949) (404fd13)
- deps: react-datepicker 의존성을 v8.7.0으로 업데이트 (main) (#18984)
- deps: react-dom 의존성을 v19.1.0으로 업데이트 (main) (#16950) (8d1dc9c)
- deps: react-hook-form 의존성을 v7.62.0으로 업데이트 (main) (#18704) (4bc9162)
- deps: react-router-dom 의존성을 v7.8.2로 업데이트 (main) (#18971)
- deps: recharts 의존성을 v2.15.4로 업데이트 (main) (#18187) (7593bf5)
- deps: tailwind-merge 의존성을 v3.3.1로 업데이트 (main) (#18061)
- deps: zod 의존성을 v3.25.76으로 업데이트 (main) (#18359) (eb1e039)
- deps: zod 의존성을 v4로 업데이트 (main) (#18392)
- deps: zombiezen.com/go/sqlite 모듈을 v1.4.2로 업데이트 (main) (#17903)
- distributor: 메타데이터 토픽 쓰기 비활성화 (#17437) (46b2271)
- distributor: level 감지에서 콜론 제거를 되돌림 (revert) (#16999) (e678b61)
- distributor: 이미 감지됐으면 level 감지를 건너뜀 (short circuit) (#17028) (58aa00a)
- distributor: dry-run 모드에서 제한 초과 스트림 건너뛰기 (#17114) (2cde9b1)
- distributor: Distributor RequestBodyTooLarge 메트릭에서 ContentLength가 음수일 때 패닉 방지 (#17054) (9e9f534)
- distributor: "Information" 로그 레벨을 "info"로 감지 (#18195) (82263d3)
- distributor: 허용된 로그 레벨 필드를 올바르게 등록 (#19261)
- distributor: debug와 critical 레벨까지 감지 레벨 확장 (#18370)
- docs: configuration.md 업데이트 (#17269) (70de523)
- docs: zone-aware ingester 업그레이드 방법 안내 추가 (#18658) (aff2cb0)
- engine: merge 노드의 읽기에서 배치 참조(batch reference)를 해제하려고 시도하지 않음 (#18913)
- engine: 잘못된 정렬로 행이 누락되던
SortMerge버그 수정 (#18334) (4fbe7c1) - engine: SortMerge 구현의 out-of-bounds 패닉 수정 (#17967)
- frontend: v6 주소의 이름 해석 허용. (#18251) (8481b34)
- helm: preStop 훅에 flush=true 추가 (#16063) (a375751)
- helm: backend, bloom builder, distributor, query-frontend, query-scheduler, read, write에 대한 init 컨테이너 설정 추가. (#18709)
- helm: Simple Scalable 모드의 read 파드에 livenessProbe 추가 (#17063)
- helm: 네이티브 ingress 경로에 누락된 로그 삭제 엔드포인트 추가 (#14390) (6db8b1f)
- helm: HorizontalPodAutoscaling 중 누락된 것들에 릴리스 네임스페이스 메타데이터 추가 (#18453) (faae40a)
- helm: loki.storage.bucketNames에 대한 검증 추가 (#13781) (831c814)
- helm: admin-api는 마이크로서비스 모드에서만 배포하도록 수정 (#13655)
- helm: Loki가 hostPath 볼륨을 사용할 수 있게 허용 (#17680) (8e61a5b)
- helm: 메트릭 NetworkPolicy를 특정 네임스페이스에서만 허용할 수 있게 변경 (#17555) (3a9b8e8)
- helm: headless svc를 스크랩하지 않게 해서 zonal ingester 이중 스크랩 피하기 (#19000)
- helm: 사이드카가 활성화되면 네임스페이스 단위 RBAC 생성 (#16776) (7c9003e)
- helm: querier와 read deployment의 target 정의에서 공백 제거하지 않기 (#19464)
- helm: global.extraEnv와 global.extraEnvFrom이 모든 리소스에 일관되게 적용되도록 보장 (#16828) (ee479d0)
- helm: k8s-sidecar 이미지에 레지스트리 명시적 설정 (#19233)
- helm: global extra* 값 수정 (#17020)
- helm: Helm 스토리지 템플릿의 잘못된 context 참조 수정 (#18740) (1f362c8)
- helm: chunksCache와 resultsCache의 PDB 설정 수정 (#18321) (e03b9b9)
- helm: X-Scope-OrgID 헤더 설정 수정 (#18414) (2f461c9)
- helm: use_thanos_objstore가 true로 설정됐을 때 storage_config 수정 (#17024) (81866d7)
- helm: 어노테이션을 활성화하는 문장 로직 수정 (#17756)
- helm: zone aware replication이 활성화됐을 때 Gateway Ingester 엔드포인트가 존재하지 않는 서비스를 가리키는 문제 수정 (#17362) (395a711)
- helm: 내장 minio가 활성화된 경우 loki.storage.bucketNames를 선택 사항으로 만듦. (#18653) (409ccbd)
- helm: lokiStorageConfig 템플릿 값에 누락된 S3 필드 (#18791)
- helm: loki-sc-rules를 컨테이너 목록에서 두 번째 위치로 이동 (#17937) (6e72df3)
- helm: 오브젝트 스토리지 버킷을 사용하는 경우에만 loki.storage.bucketNames 아래 ruler 키 존재 검증 (#18665) (0604477)
- helm: 불안정한(flaky) enterprise 테스트 제거 (#19362)
- helm: 설정 크래시를 피하려고 지원 중단된 admin_api_directory 제거 (#18731) (8cce03c)
- helm: Thanos ruler 스토리지 변경 롤백 (#18907)
- helm:
monitoring블록의 여러 기능을 다시 지원(deprecate 해제) (#19012) - helm: UI 활성화를 위해 querier, read, single binary target 정의 업데이트 (#19461)
- helm: zone-aware ingester statefulset에서 올바른 serviceName 사용 (#18558) (2706302)
- helm: Helm 차트에서 nginx gateway 설정 템플릿 처리의 들여쓰기 수정 (#18167) (4fe20a7)
- helm: extra manifest를 두 개 이상 추가할 때 Loki 차트가 올바른 YAML을 렌더링하지 못하는 문제 수정 (#12911) (cf12656)
- helm: compactor 주소에 gRPC를 사용하도록 helm 수정 (#17454) (90003f6)
- helm: gateway 컨테이너 포트를 nginx 서버 포트로 사용 (#18774)
- helm: CiliumNetworkPolicies의 포트를 정수 대신 문자열 사용 (#19252)
- helm: 높은 CPU 사용량을 해결하려고 location에 websocket 관련 proxy_set_header 추가. (#18800)
- helm: 네임드 포트 대신 UDP/53으로 DNS egress 사용 (#19073)
- helm: ingress NetworkPolicy에 single-binary 컴포넌트 추가 (#19229)
- helm: gateway가 활성화됐을 때만 canary가 동작하던 문제 수정 (#16758)
- helm: helm 배포에서 ui 활성화 (#17562)
- helm: loki-helm-test 이미지 태그를 최신 커밋으로 업데이트 (#19227)
- ingester: monolithic 모드에서 시리즈가 누락되는 문제 수정 (#17067) (5625464)
- json parser: 쿼리 경로에서
json파서가 JSON 로그 줄을 손상시킬 수 있던 문제 수정 (#18056) - json, structured metadata: JSON 파싱 API에서 이스케이프(escaping) 올바르게 처리 (#17068)
- json, structured metadata: JSON 파싱 정리 (#17072) (2aed4c3)
- kafka: Kafka 프로듀서에서 중복 메트릭 제거 (#18614) (a67a460)
- kafka: 기본 주소 기본값(defaults address defaults) 비활성화 (#17825)
- kafka: cooperative active sticky 로드 밸런서 사용 (#19160)
- limits: 기본값 조정과 evict interval 노출 (#17808)
- limits: ingest-limits eviction 메트릭 수정 (#17779)
- limits: ingest-limits 설정에서 consumer group과 topic 읽기 (#17831)
- limits: 모든 파티션이 준비되면 ready로 설정 (#18092) (a07bee5)
- limits: 카운터 변수 이름 끝에 total이 없어야 함 ((#17982)
- logql: 파싱된 필드 단락 평가(short circuiting)의 비일관성 수정 (#17104) (88beefb)
- logql: logql 표현식 검증 시 label_replace 안의 표현식을 감지하고 검증 (#18470) (d379de5)
- logql: querier에 approx-topk 함수 구현 (#17816)
- logql: JSON과 logfmt 파서의 메모리 할당 감소 (#18637)
- loki: applied limits 엔드포인트에서 존재하지 않는 테넌트에 기본값 반환 (#17942)
- memberlist: v6 인터페이스에서 advertise address 이름 해석 허용 (#18250) (8594d1c)
- mixin: Loki Reads 대시보드 TSDB 행의 오타 수정 (#18872)
- mixins: Loki logs 대시보드의 레이블 생성 수정 (#17412) (da2b620)
- objstore: Thanos Store가 활성화됐을 때 ruler가 시작하지 않고 mkdir 경로가 잘못되는 문제 수정 (#16555) (3da9f2c)
- oltp: overrides에서 업데이트된 경우에만 전역 otlp 설정을 테넌트 설정에 적용 (#19213)
- operator: 최대 OpenShift 버전 속성의 타입 수정 (#18066) (f7c7dfa)
- operator: forcepathstyle 관련 문서 오타 수정 (#17725)
- operator: 최대 OpenShift 버전 업데이트 (#17954)
- operator: ingester가 비정상(unhealthy)이 되면 memberlist 업데이트 (#17026) (c63f0a9)
- operator: 알림/규칙(alerts/rules)용 webhook validator 업데이트 (#17824)
- operator: 우리가 적용하는 검증을 따르도록 AlertingRule 샘플 수정 (#18671)
- operator: v1+를 위한 OPA 정책 문법 업그레이드 (#18795)
- otlp: 리소스/스코프(resource/scope) 속성을 추가하기 전에 엔트리 메타데이터 크기 계산 (#17629) (2161c8c)
- patterns: 패턴 영속 저장(persistence) 기능 플래그 (#18285) (a206324)
- patterns: 영속 저장되는 패턴의 볼륨과 빈도 제한 (#18362) (c690827)
- patterns: 패턴 영속 저장을 활성화하는 기능 플래그 수정 (#18216) (c167800)
- push: 음수 카운터 값을 막는 가드 절(guard clauses) 추가 (#17056) (9000de1)
- push: 로그에 오류가 계속 쏟아지지 않게 가드 절 수정 (#17372) (d70b20e)
- push: push 통계 계산 수정 (#19319)
- querier: nil 응답에서 agg 메트릭을 필터링할 때 발생하던 패닉 수정 (#17662)
- querier: 감지된 레이블(detected labels)에서 불리언 숫자 값 허용 (#16997) (bfb935d)
- querier: 아주 긴 시간 범위 쿼리의 병렬도(parallelism) 계산 시 정수 오버런 수정 (#17428) (82acbd5)
- querier: 아주 긴 시간 범위 쿼리의 병렬도 계산 시 정수 오버런에 대한 더 나은 수정 (#17430) (d660af3)
- querier: "perf: cachedIterator의 메모리 누수 수정 (#17628)" 되돌리기 (#18687) (0316740)
- ruler: 규칙 평가(rule evaluation)에서 로그 레벨 verbosity 수정 (#19519)
- ruler: 여러 org ID가 있을 때 StatusBadRequest 반환 (#17850)
- storage: composite store의 Volume 메서드에서 nil 포인터 역참조 수정 (#18064) (fc7c018)
- storage: S3 클라이언트를 만들 때 기본 설정 사용 (backport k277) (#19559)
- stream-generator: create/keep-alive 스트림 루틴 분리 (#17815)
- structured metadata: 구조화된 메타데이터 레이블 정규화(label normalization) 성능 개선 (#17332) (87922da)
- structured metadata: JSON 구조화 메타데이터 문자열 값 언이스케이프(unescape) (#13919) (9629d07)
- structured metadata: 스트림 레이블과 추출된 맵에서 중복 구조화 메타데이터를 추가하지 않도록 보장 (#18523) (db72d63)
- tests: kfake를 업데이트해 테스트 수정하고 go-redis 되돌리기 (#18958)
- tools: appenPath 함수 이름의 오타 수정 (#17917)
- tsdb: 필요할 때만 tsdb에서 레이블 값 복사 (#17077) (8e4b104)
- ui: UI 빌드 수정 (#17717) (e01a2a9)
- ui: UI의 @swc/core 의존성을 v1.13.5로 다운그레이드 (#19345)
- WAL: 시작 시 WAL 손상을 올바르게 처리 (#18175) (1954f67)
더 알아보기 (Learn more)
- Loki 업그레이드 가이드 — 릴리스 간 주요 변경 사항과 마이그레이션 절차를 확인할 수 있어요.
- Loki 릴리스 노트 목록 — 다른 버전의 릴리스 노트도 함께 살펴보세요.
- Loki Helm 배포 가이드 — Helm 차트로 Loki를 설치하고 운영하는 방법을 안내해요.