mirror of https://github.com/grafana/loki
Tag:
Branch:
Tree:
dca5d71d7c
2005.12.08-limits
2025.08.04_metricsQuery
add-cleanup-branches-workflow
add-fallback-batcher
add-time-snap-middleware
aggregator-columnar
alt-err-prop
arrow-batch-agg-sorting
arve/add-claude.md
arve/remove_global_name_validation
ashwanth/restructure-query-section
auto-triager
aws-bug
backport-13116-to-release-3.3.x
backport-14221-to-release-3.2.x
backport-14780-to-release-3.2.x
backport-16045-to-k239
backport-17054-to-k249
backport-17129-to-k277
backport-21254-to-k297
backport-21990-to-release-3.6.x
backport-21990-to-release-3.7.x
backport-21995-to-release-3.6.x
backport-21995-to-release-3.7.x
backport-22000-to-release-3.7.x
benchmark-improvements
benclive/add-unique-parsed-keys-to-pointers
benclive/batch-aggregator-add
benclive/buffer-nodesource-channel
benclive/caching-logs
benclive/cleanup-partial-downloads
benclive/columnar-reader-impl
benclive/custom-stream-tools
benclive/dataobj-consumer-autoresearch
benclive/fix-engine-admission-lane-leak
benclive/fix-range-agg-without-by
benclive/hedge-requests-exp
benclive/implement-tsdb-writer-for-dataobj-consumers
benclive/index-compaction-poc
benclive/index-compaction-poc-2
benclive/index-testing-wip
benclive/k289-backport
benclive/k305-predicate-error
benclive/refactor-aggregator-tests
benclive/respect-encoding-flags-compat
benclive/scan-kafka
benclive/update-github-runners-to-use-free-or-self-hosted
benton/loki-mixin-updates
bound-parallelism-slicefor
callum-pipeline-sanitize-sm-values
callum-stream_limit-insights
callum-track-max-labels
cancel-delete-request-with-details-handler
chaudum/cleanup-ingester
chaudum/deprecate-tsdb-sharding-strategy
chaudum/fix-blocked-query-edgecase
chaudum/generic-dataobj-section
chaudum/inmemory-kafka
chaudum/k259
chaudum/metastore-toc-bucket
chaudum/module-cleanup
chaudum/move-state-workflow
chaudum/remove-deprecated-api-endpoints
chaudum/remove-deprecated-storage-backends
chaudum/remove-write-read-backend-targets
chaudum/renovate-rules-for-dependencies
chaudum/update-renovate-json
check-inverse-postings
columnar-agg
compare-igw-metastore
compare-igw-metastore2
config-parsing-hooks-refactor
dahoppe/claude/shuffle-shard-optimisation
dahoppe/heap-usage-metrics
dahoppe/load-shed-while-decompressing
dahoppe/pattern-tee-bytes-metric
dahoppe/shuffle-sharding-experimentation
dahoppe/shuffle-sharding-optimisation
danhopper/automemlimit
danhopper/colliding-metric-names
danhopper/fewer-goroutines-distributor
danhopper/no-more-shuffle-sharding
data-locality
dataobj-compactor/consolidation-slo-metrics
dataobj-compactor/index-merge-executor
dataobj-compactor/index-merge-executor-core
dataobj-compactor/indexmerge-proto-marshal
dataobj-compactor/marker-management
dataobj-store-sort-order
dedupe-metric-queries
dedupe-ranges
dependabot/go_modules/golang.org/x/crypto-0.45.0
dependabot/go_modules/operator/api/loki/golang.org/x/net-0.38.0
dependabot/go_modules/operator/golang.org/x/crypto-0.45.0
deps-update/main-actions-checkout-digest
deps-update/main-create-github-app-token-grafana-shared-workflows-0.x
deps-update/main-docker-login-action-4.x
deps-update/main-fjogeleit-yaml-update-action-0.x
deps-update/main-github.comalecthomaschromav2
deps-update/main-github.comalicebobminiredisv2
deps-update/main-github.comapachethrift
deps-update/main-github.comawsaws-sdk-go-v2config
deps-update/main-github.comawsaws-sdk-go-v2credentials
deps-update/main-github.comawsaws-sdk-go-v2services3
deps-update/main-github.combaidubcebce-sdk-go
deps-update/main-github.combugerjsonparser
deps-update/main-github.comcontainerdcontainerdv2
deps-update/main-github.comgo-josego-josev4
deps-update/main-github.comgo-sql-drivermysql
deps-update/main-github.comibmgo-sdk-corev5
deps-update/main-github.comklauspostcompress
deps-update/main-github.comleodidogo-syslogv4
deps-update/main-github.comminiominio-gov7
deps-update/main-github.compierreclz4v4
deps-update/main-github.compresslygoosev3
deps-update/main-github.comprometheuscommon
deps-update/main-github.comredisgo-redisv9
deps-update/main-github.comshirougopsutilv4
deps-update/main-github.comtwmbfranz-go
deps-update/main-github.comtwmbfranz-gopkgkadm
deps-update/main-go-patch-updates
deps-update/main-go.opentelemetry.iocollectorpdata
deps-update/main-go.opentelemetry.iocontribinstrumentationgoogle.golang.orggrpcotelgrpc
deps-update/main-go.opentelemetry.iocontribinstrumentationnethttphttptraceotelhttptrace
deps-update/main-go.opentelemetry.iocontribinstrumentationnethttpotelhttp
deps-update/main-go.opentelemetry.iootelsdk
deps-update/main-golang.org-x-crypto-0.x
deps-update/main-golang.org-x-net-0.x
deps-update/main-golang.org-x-sys-0.x
deps-update/main-golang.orgxcrypto
deps-update/main-golang.orgxnet
deps-update/main-golang.orgxsys
deps-update/main-golangci-golangci-lint-2.x
deps-update/main-google.golang.orgapi
deps-update/main-google.golang.orggrpc
deps-update/main-googleapis-release-please-action-4.x
deps-update/main-googleapis-release-please-action-5.x
deps-update/main-helm-rollout-operator
deps-update/main-k8s.ioapimachinery
deps-update/main-lock-file-maintenance
deps-update/main-logstash-9.3.4
deps-update/main-logstash-9.x
deps-update/main-major-github-artifact-actions
deps-update/main-major-github.comtwmbfranz-gopkgkmsg
deps-update/main-memcached-1.x
deps-update/main-peter-evans-create-pull-request-8.x
deps-update/main-prom-prometheus-3.x
deps-update/release-3.5.x-go-golang.org-x-crypto-vulnerability
deps-update/release-3.5.x-go-google.golang.org-grpc-vulnerability
deps-update/release-3.6.x-github.com-grafana-loki-v3-3.x
deps-update/release-3.6.x-github.com-prometheus-prometheus-0.x
deps-update/release-3.6.x-github.comcontainerdcontainerdv2
deps-update/release-3.6.x-github.comgrafanalokiv3
deps-update/release-3.6.x-github.comprometheusprometheus
deps-update/release-3.6.x-go
deps-update/release-3.6.x-go-1.x
deps-update/release-3.6.x-go.opentelemetry.iootel
deps-update/release-3.6.x-golang.org-x-crypto-0.x
deps-update/release-3.6.x-golang.org-x-net-0.x
deps-update/release-3.6.x-golang.org-x-sys-0.x
deps-update/release-3.6.x-golang.orgxcrypto
deps-update/release-3.6.x-golang.orgxnet
deps-update/release-3.6.x-golang.orgxsys
deps-update/release-3.6.x-opentelemetry-go-monorepo
deps-update/release-3.7.x-github.comapachethrift
deps-update/release-3.7.x-github.comcontainerdcontainerdv2
deps-update/release-3.7.x-go
deps-update/release-3.7.x-go-1.x
deps-update/release-3.7.x-go-go.opentelemetry.io-otel-sdk-vulnerability
deps-update/release-3.7.x-go-patch-updates
deps-update/release-3.7.x-go.opentelemetry.iootel
deps-update/release-3.7.x-golang.org-x-crypto-0.x
deps-update/release-3.7.x-golang.org-x-net-0.x
deps-update/release-3.7.x-golang.org-x-sys-0.x
deps-update/release-3.7.x-golang.orgxcrypto
deps-update/release-3.7.x-golang.orgxnet
deps-update/release-3.7.x-golang.orgxsys
docs-nvdh-log-queries
dont-log-every-indexset-call-
emit-events-without-debuggnig
enable-az-limits
fcjack/image-workflows
feat/dataobj-tsdb
find-correctness-bugs
fix-discarded-otlp-volume
fix/range-agg-step-alignment-v2
gerboland/loki-data-chunk-fetcher
grobinson/add-cluster-namespace-segmentation-key
grobinson/add-ctx-builder-flush
grobinson/add-estimated-rate-metric
grobinson/add-gauge-buffered-events
grobinson/add-gauge-num-sections
grobinson/add-lag-collector
grobinson/add-metric-time-partition-estimate
grobinson/add-rate-service
grobinson/add-separate-rate-store-limits-service
grobinson/approx-shuffle-shard-within-tenant-shuffle
grobinson/avoid-map-regrow
grobinson/avoid-map-regrow-k289
grobinson/build-image-ops-17-03-2026
grobinson/dedicated-first-two-partitions-late-logs
grobinson/dont-increment-atomic-just-to-check-limit
grobinson/drop-traffic-when-buffer-full
grobinson/experiment-different-builders-for-old-logs
grobinson/experiment-shard-stream-hash-within-segment-subring
grobinson/fix-limits-kafka-backoff
grobinson/fix-misnamed-metric
grobinson/fix-race-condition-in-tracker
grobinson/fix-race-in-builder-tests
grobinson/include-labels-in-size-calc
grobinson/limited-reader-claude
grobinson/no-cancel-producer
grobinson/rateservice
grobinson/remove-kotel
grobinson/run-gc-after-flush
grobinson/run-gc-after-flush-2
grobinson/split-partitions-into-old-and-new-entries
grobinson/support-parallel-flush
grobinson/test-lag-collector-ingesters
grobinson/test-optimizations-shuffle-shard
grobinson/test-p95-rate
grobinson/track-buffered-bytes-pattern-tee
grobinson/track-consumption-lag-offsets
grobinson/use-consumer-index-builders
grobinson/use-default-size-maps-to-avoid-reallocs
grobinson/use-local-distributor-rate-store-segmentation-keys
grobinson/use-stream-size-in-update-rates
grobinson/use-xxhash-for-better-avalanche-effect
grobinson/wip
grobinson/wip-flush-in-background
grobinson/wip2
handle-errors-per-category
hay-kot/loki-replay-compaction-research
helm-chart-tagged-6.30.0
helm-chart-tagged-6.44.0
helm-chart-tagged-6.56.0
helm-chart-tagged-7.1.0
helm-chart-weekly-6.55.0
helm-chart-weekly-7.1.0
helm-chart-weekly-7.2.0
hundredwatt/dataobj-consumer-autoresearch
ignore-yaml-errors
index-builder-lag-report-only
index-gateway-dataobj-tsdb-dualresolve
ingest-pipelines
isolate-sort-metrics
ivkalita/metastore-distributed-plus-scheduler
ivkalita/toc-4-multi-builders
ivkalita/toc-aligned-logsobj-builders
ivkalita/update-comments
jnewbigin/build-images
jnewbigin/lbac
jnewbigin/partition-metrics
k100
k101
k102
k103
k104
k105
k106
k107
k108
k109
k110
k111
k112
k113
k114
k115
k116
k117
k118
k119
k12
k120
k121
k122
k123
k124
k125
k126
k127
k128
k129
k13
k130
k131
k132
k133
k135
k136
k137
k138
k139
k14
k140
k141
k142
k143
k144
k145
k146
k147
k148
k149
k15
k150
k151
k152
k153
k154
k155
k156
k157
k158
k159
k16
k160
k161
k162
k163
k164
k165
k166
k167
k168
k169
k17
k170
k171
k172
k173
k174
k175
k176
k177
k178
k179
k18
k180
k181
k182
k183
k184
k185
k186
k187
k188
k189
k19
k190
k191
k192
k193
k194
k195
k195-backup
k196
k197
k198
k199
k20
k200
k201
k202
k203
k204
k205
k206
k207
k208
k209
k21
k210
k211
k212
k213
k214
k215
k216
k217
k218
k219
k22
k220
k221
k222
k228
k229
k23
k230
k231
k232
k233
k234
k235
k236
k237
k238
k239
k24
k240
k241
k242
k243
k244
k245
k246
k246-with-per-tenant-ruler-wal-replay
k247
k248
k248-distributor-lvl-detection
k248-level-detection-debugging
k248-levels-as-index
k249
k25
k250
k251
k252
k253
k254
k255
k256
k257
k258
k259
k26
k260
k261
k262
k263
k264
k265
k266
k267
k268
k269
k27
k270
k271
k272
k273
k274
k275
k276
k277
k278
k279
k28
k280
k281
k282
k283
k284
k284-ewelch
k284-metastore-improv
k285
k286
k287
k288
k289
k29
k290
k291
k291-rangeagg-shard
k292
k293
k294
k295
k296
k297
k298
k299
k30
k300
k301
k302
k303
k304
k305
k306
k307
k308
k309
k31
k32
k33
k34
k35
k36
k37
k38
k39
k40
k41
k42
k43
k44
k45
k46
k47
k48
k49
k50
k51
k52
k53
k54
k55
k56
k57
k58
k59
k60
k61
k62
k63
k64
k65
k66
k67
k68
k69
k70
k71
k72
k73
k74
k75
k76
k77
k78
k79
k80
k81
k82
k83
k84
k85
k86
k87
k88
k89
k90
k91
k92
k93
k94
k95
k96
k97
k98
k99
kk/test
label-filter-predicate-pushdown
leizor/policy-reject-old-samples
logql-analyzer-wasm
long-oak
main
meher/a-separate-trace-for-engine-execution
meher/local-worker-setup
meher/log-partition-ring-cache-map-size
meher/parition-ring-manual-disable
meher/persistent-workerLoop-per-worker-connection
meher/query-lab
meher/remove-frontend-rule
meher/run-go-fix
meher/worker-phases-histogram
paul1r/k294_dupes
periklis/k280-max-query-bytes-read
periklis/max-query-bytes-read
push-rnvszrozvuoq
query-tee-mismatch-analysis-tool
query-timestamp-validation
rangeaggonly
rebase-idiomatic-worker-pattern
release-2.0.1
release-2.2
release-2.2.1
release-2.3
release-2.4
release-2.5.x
release-2.6.x
release-2.7.x
release-2.8.x
release-2.8.x-fix-failing-test
release-2.9.x
release-3.0.x
release-3.1.x
release-3.2.x
release-3.3.x
release-3.4.x
release-3.5.x
release-3.6.x
release-3.7.0-from-k
release-3.7.x
release-please--branches--k300
release-please--branches--k301
release-please--branches--k303
release-please--branches--k304
release-please--branches--k305
release-please--branches--k306
release-please--branches--k307
release-please--branches--k308
release-please--branches--k309
release-please--branches--main--components--operator
release-please--branches--release-2.9.x
release-please--branches--release-3.5.x
remote-rule-evaluator-middleware
remove-early-eof
reuse-labels-in-aggregator
salvacorts/k289/debub-lbac-volume
salvacorts/multi-merge
salvacorts/over-sophie-predicateclamp
salvacorts/reuse-forward-allo-headers
salvacorts/scan-cache-stats
salvacorts/sjwtaskclamp›-with-ashwanth-changes
salvacorts/task_ids
scantimerangepushup
scheduler-assignlock-granular
scheduler_contentions
shantanu/dataobj-compactor
shantanu/dedupe-with-sm
shantanu/fix-k290-deps
shantanu/fix-patterns-newlines
shantanu/tmp-fix-proj-pushdown
shantanu/tmp-proj-pushdown-bug
shantanu/update-go-deps
shantanu/use-yarn-release-workflows
sjwbillingtest
sjwpoolmemory
sjwtaskclamp
sjwtaskclamp2
skip-recent-queries-comparison
solid-moon-2
sophiewaldman-patch-1
sp/fix-discover-service-name
spiridonov-agg-perf-2
spiridonov-agg-sharding
spiridonov-agg-sharding-2
spiridonov-engine-sandbox
start-replay-support
stop-using-retry-flag
structured-metadata-push-down-3
svennergr-patch-1
task-batch-assign
test-labeler
test-query-limits-fixes
test-workflow
thor-ingestion
thor-working-version
tinitiuset/ft-loki-mixin
tpatterson/expose-partition-ring
trevorwhitney/structured-metadata-push-down
twhitney/goldfish-mcp
update-prometheus
update-version-to-1.26.3
wire-dispatch
wire-metrics
workspace/dataobj-compaction-indexes-read
workspace/postings-write-sections-only-rollout
wrap-downloading-file-errors
xcap-coverage
xcap-pipeline-inject
2.8.3
helm-loki-3.0.0
helm-loki-3.0.1
helm-loki-3.0.2
helm-loki-3.0.3
helm-loki-3.0.4
helm-loki-3.0.5
helm-loki-3.0.6
helm-loki-3.0.7
helm-loki-3.0.8
helm-loki-3.0.9
helm-loki-3.1.0
helm-loki-3.10.0
helm-loki-3.2.0
helm-loki-3.2.1
helm-loki-3.2.2
helm-loki-3.3.0
helm-loki-3.3.1
helm-loki-3.3.2
helm-loki-3.3.3
helm-loki-3.3.4
helm-loki-3.4.0
helm-loki-3.4.1
helm-loki-3.4.2
helm-loki-3.4.3
helm-loki-3.5.0
helm-loki-3.6.0
helm-loki-3.6.1
helm-loki-3.7.0
helm-loki-3.8.0
helm-loki-3.8.1
helm-loki-3.8.2
helm-loki-3.9.0
helm-loki-4.0.0
helm-loki-4.1.0
helm-loki-4.10.0
helm-loki-4.2.0
helm-loki-4.3.0
helm-loki-4.4.0
helm-loki-4.4.1
helm-loki-4.4.2
helm-loki-4.5.0
helm-loki-4.5.1
helm-loki-4.6.0
helm-loki-4.6.1
helm-loki-4.6.2
helm-loki-4.7.0
helm-loki-4.8.0
helm-loki-4.9.0
helm-loki-5.0.0
helm-loki-5.1.0
helm-loki-5.10.0
helm-loki-5.11.0
helm-loki-5.12.0
helm-loki-5.13.0
helm-loki-5.14.0
helm-loki-5.14.1
helm-loki-5.15.0
helm-loki-5.17.0
helm-loki-5.18.0
helm-loki-5.18.1
helm-loki-5.19.0
helm-loki-5.2.0
helm-loki-5.20.0
helm-loki-5.21.0
helm-loki-5.22.0
helm-loki-5.22.1
helm-loki-5.22.2
helm-loki-5.23.0
helm-loki-5.23.1
helm-loki-5.24.0
helm-loki-5.25.0
helm-loki-5.26.0
helm-loki-5.27.0
helm-loki-5.28.0
helm-loki-5.29.0
helm-loki-5.3.0
helm-loki-5.3.1
helm-loki-5.30.0
helm-loki-5.31.0
helm-loki-5.32.0
helm-loki-5.33.0
helm-loki-5.34.0
helm-loki-5.35.0
helm-loki-5.36.0
helm-loki-5.36.1
helm-loki-5.36.2
helm-loki-5.36.3
helm-loki-5.37.0
helm-loki-5.38.0
helm-loki-5.39.0
helm-loki-5.4.0
helm-loki-5.40.1
helm-loki-5.41.0
helm-loki-5.41.1
helm-loki-5.41.2
helm-loki-5.41.3
helm-loki-5.41.4
helm-loki-5.41.5
helm-loki-5.41.6
helm-loki-5.41.7
helm-loki-5.41.8
helm-loki-5.41.9-distributed
helm-loki-5.41.9-distributed-rc2
helm-loki-5.42.0
helm-loki-5.42.1
helm-loki-5.42.2
helm-loki-5.42.3
helm-loki-5.43.0
helm-loki-5.43.1
helm-loki-5.43.2
helm-loki-5.43.3
helm-loki-5.43.4
helm-loki-5.43.5
helm-loki-5.43.6
helm-loki-5.43.7
helm-loki-5.44.0
helm-loki-5.44.1
helm-loki-5.44.2
helm-loki-5.44.3
helm-loki-5.44.4
helm-loki-5.45.0
helm-loki-5.46.0
helm-loki-5.47.0
helm-loki-5.47.1
helm-loki-5.47.2
helm-loki-5.48.0
helm-loki-5.5.0
helm-loki-5.5.1
helm-loki-5.5.10
helm-loki-5.5.11
helm-loki-5.5.12
helm-loki-5.5.2
helm-loki-5.5.3
helm-loki-5.5.4
helm-loki-5.5.5
helm-loki-5.5.6
helm-loki-5.5.7
helm-loki-5.5.8
helm-loki-5.5.9
helm-loki-5.6.0
helm-loki-5.6.1
helm-loki-5.6.2
helm-loki-5.6.3
helm-loki-5.6.4
helm-loki-5.7.1
helm-loki-5.8.0
helm-loki-5.8.1
helm-loki-5.8.10
helm-loki-5.8.11
helm-loki-5.8.2
helm-loki-5.8.3
helm-loki-5.8.4
helm-loki-5.8.5
helm-loki-5.8.6
helm-loki-5.8.7
helm-loki-5.8.8
helm-loki-5.8.9
helm-loki-5.9.0
helm-loki-5.9.1
helm-loki-5.9.2
helm-loki-6.0.0
helm-loki-6.1.0
helm-loki-6.10.0
helm-loki-6.10.1
helm-loki-6.10.2
helm-loki-6.11.0
helm-loki-6.12.0
helm-loki-6.15.0
helm-loki-6.16.0
helm-loki-6.18.0
helm-loki-6.19.0
helm-loki-6.19.0-weekly.227
helm-loki-6.2.0
helm-loki-6.2.1
helm-loki-6.2.2
helm-loki-6.2.3
helm-loki-6.2.4
helm-loki-6.2.5
helm-loki-6.20.0
helm-loki-6.20.0-weekly.229
helm-loki-6.21.0
helm-loki-6.22.0
helm-loki-6.22.0-weekly.230
helm-loki-6.23.0
helm-loki-6.23.0-weekly.231
helm-loki-6.24.0
helm-loki-6.24.0-weekly.232
helm-loki-6.24.1
helm-loki-6.25.0
helm-loki-6.25.1
helm-loki-6.26.0
helm-loki-6.27.0
helm-loki-6.28.0
helm-loki-6.29.0
helm-loki-6.3.0
helm-loki-6.3.1
helm-loki-6.3.2
helm-loki-6.3.3
helm-loki-6.3.4
helm-loki-6.30.0
helm-loki-6.30.1
helm-loki-6.31.0
helm-loki-6.32.0
helm-loki-6.33.0
helm-loki-6.34.0
helm-loki-6.35.0
helm-loki-6.35.1
helm-loki-6.36.0
helm-loki-6.36.1
helm-loki-6.37.0
helm-loki-6.38.0
helm-loki-6.39.0
helm-loki-6.4.0
helm-loki-6.4.1
helm-loki-6.4.2
helm-loki-6.40.0
helm-loki-6.41.0
helm-loki-6.41.1
helm-loki-6.42.0
helm-loki-6.43.0
helm-loki-6.44.0
helm-loki-6.45.0
helm-loki-6.45.1
helm-loki-6.45.2
helm-loki-6.46.0
helm-loki-6.48.0
helm-loki-6.49.0
helm-loki-6.5.0
helm-loki-6.5.1
helm-loki-6.5.2
helm-loki-6.50.0
helm-loki-6.51.0
helm-loki-6.52.0
helm-loki-6.53.0
helm-loki-6.54.0
helm-loki-6.55.0
helm-loki-6.6.0
helm-loki-6.6.1
helm-loki-6.6.2
helm-loki-6.6.3
helm-loki-6.6.4
helm-loki-6.6.5
helm-loki-6.6.6
helm-loki-6.7.0
helm-loki-6.7.1
helm-loki-6.7.2
helm-loki-6.7.3
helm-loki-6.7.4
helm-loki-6.8.0
helm-loki-6.9.0
helm-loki-7.0.0
operator/v0.0.1-test
operator/v0.0.2-test
operator/v0.10.0
operator/v0.10.1
operator/v0.4.0
operator/v0.5.0
operator/v0.6.0
operator/v0.6.1
operator/v0.6.2
operator/v0.7.0
operator/v0.7.1
operator/v0.8.0
operator/v0.9.0
pkg/logql/syntax/v0.0.1
v0.1.0
v0.2.0
v0.3.0
v0.4.0
v1.0.0
v1.0.1
v1.0.2
v1.1.0
v1.2.0
v1.3.0
v1.4.0
v1.4.1
v1.5.0
v1.6.0
v1.6.1
v2.0.0
v2.0.1
v2.1.0
v2.2.0
v2.2.1
v2.3.0
v2.4.0
v2.4.1
v2.4.2
v2.5.0
v2.6.0
v2.6.1
v2.7.0
v2.7.1
v2.7.2
v2.7.3
v2.7.4
v2.7.5
v2.7.6
v2.7.7
v2.8.0
v2.8.1
v2.8.10
v2.8.11
v2.8.2
v2.8.3
v2.8.4
v2.8.5
v2.8.6
v2.8.7
v2.8.8
v2.8.9
v2.9.0
v2.9.1
v2.9.10
v2.9.11
v2.9.12
v2.9.13
v2.9.14
v2.9.15
v2.9.16
v2.9.17
v2.9.2
v2.9.3
v2.9.4
v2.9.5
v2.9.6
v2.9.7
v2.9.8
v2.9.9
v3.0.0
v3.0.1
v3.1.0
v3.1.1
v3.1.2
v3.2.0
v3.2.1
v3.2.2
v3.3.0
v3.3.1
v3.3.2
v3.3.3
v3.3.4
v3.4.0
v3.4.1
v3.4.2
v3.4.3
v3.4.4
v3.4.5
v3.4.6
v3.5.0
v3.5.1
v3.5.10
v3.5.11
v3.5.12
v3.5.2
v3.5.3
v3.5.4
v3.5.5
v3.5.6
v3.5.7
v3.5.8
v3.5.9
v3.6.0
v3.6.1
v3.6.10
v3.6.11
v3.6.2
v3.6.3
v3.6.4
v3.6.5
v3.6.6
v3.6.7
v3.6.8
v3.6.9
v3.7.0
v3.7.1
v3.7.2
${ noResults }
27 Commits (dca5d71d7cde104f4e449291fce74369f61a13cf)
| Author | SHA1 | Message | Date |
|---|---|---|---|
|
|
f2c2a22bdc
|
chore: Preparation for incoming static code analysis CI check (#15164)
Co-authored-by: Danny Cooper <danny.cooper@grafana.com> |
2 years ago |
|
|
95942cbf1b
|
chore: fix some comments (#13830)
Signed-off-by: lencap <techgeek@189.cn> Co-authored-by: Paul Rogers <129207811+paul1r@users.noreply.github.com> |
2 years ago |
|
|
f68d1f7faf
|
fix: make detected fields work for both json and proto (#12682)
|
2 years ago |
|
|
616977a942
|
fix: close res body (#12444)
Signed-off-by: guoguangwu <guoguangwug@gmail.com> Co-authored-by: Michel Hollands <42814411+MichelHollands@users.noreply.github.com> |
2 years ago |
|
|
4c88be0ef2
|
chore: update loki modules for 3.0 release (#12433)
Signed-off-by: Edward Welch <edward.welch@grafana.com> |
2 years ago |
|
|
472496feb7
|
Parse JSON String arrays properly so string elements can be retrieved (#11921)
**What this PR does / why we need it**:
This PR imports the newly forked grafana/jsonparser over the
buger/jsonparser module. The latter has seemingly been abandoned. PR
10690 introduces a fix to the jsonparser module, which has been
incorporated into the grafana fork of the module.
The PR is designed to fix accessing string array elements from within a
JSON structure. For example, with the following JSON:
`{"log":{"message":{"content":{"misses":["a","b","c","d"]}}}}`
The Loki code, before this PR, when searching for `json misses =
"log.message.content.misses[0]" ` will result in an "Unknown value type
error". After this PR is merged, the result will assign `a` to the
`misses` variable.
**Which issue(s) this PR fixes**:
Fixes #[9179](https://github.com/grafana/loki/issues/9179)
https://github.com/grafana/loki/pull/10690
**Special notes for your reviewer**:
**Checklist**
- [x] Reviewed the
[`CONTRIBUTING.md`](https://github.com/grafana/loki/blob/main/CONTRIBUTING.md)
guide (**required**)
- [ ] Documentation added
- [x] Tests updated
- [x] `CHANGELOG.md` updated
- [x] If the change is worth mentioning in the release notes, add
`add-to-release-notes` label
- [ ] Changes that require user attention or interaction to upgrade are
documented in `docs/sources/setup/upgrade/_index.md`
- [ ] For Helm chart changes bump the Helm chart version in
`production/helm/loki/Chart.yaml` and update
`production/helm/loki/CHANGELOG.md` and
`production/helm/loki/README.md`. [Example
PR](
|
2 years ago |
|
|
6bcac00c70
|
Add e2e tests for bloom filtering (#11645)
**What?** This PR adds an end-to-end integration test for creating bloom filters and using them in the gateway to filter chunks. **Why?** This test helped to identify bugs in the bloom shipper code that would have taken a very long time to discover in other ways, such as deploying to a dev environment or running a long-running docker compose setup. **Notes** The following commits of this PR are actual changes to the compactor/gateway code to make e2e test work: * |
2 years ago |
|
|
b18078827e
|
Map rpc Status back to user error (#11449)
**What this PR does / why we need it**: Errors forwarded from the querier to the frontend would be reported with the wrong error code and message. This change fixes this. **Checklist** - [ ] Reviewed the [`CONTRIBUTING.md`](https://github.com/grafana/loki/blob/main/CONTRIBUTING.md) guide (**required**) - [ ] Documentation added - [x] Tests updated - [ ] `CHANGELOG.md` updated - [ ] If the change is worth mentioning in the release notes, add `add-to-release-notes` label - [ ] Changes that require user attention or interaction to upgrade are documented in `docs/sources/setup/upgrade/_index.md` - [ ] For Helm chart changes bump the Helm chart version in `production/helm/loki/Chart.yaml` and update `production/helm/loki/CHANGELOG.md` and `production/helm/loki/README.md`. [Example PR]( |
3 years ago |
|
|
8dde7b9d49
|
Support tail requests with protobuf encoding. (#11426)
**What this PR does / why we need it**: The `TailRequest` would use `bytes plan` instead of `Plan plan`. The former is not well supported in gogoprotobuf. **Checklist** - [ ] Reviewed the [`CONTRIBUTING.md`](https://github.com/grafana/loki/blob/main/CONTRIBUTING.md) guide (**required**) - [ ] Documentation added - [x] Tests updated - [ ] `CHANGELOG.md` updated - [ ] If the change is worth mentioning in the release notes, add `add-to-release-notes` label - [ ] Changes that require user attention or interaction to upgrade are documented in `docs/sources/setup/upgrade/_index.md` - [ ] For Helm chart changes bump the Helm chart version in `production/helm/loki/Chart.yaml` and update `production/helm/loki/CHANGELOG.md` and `production/helm/loki/README.md`. [Example PR]( |
3 years ago |
|
|
52a3f16039
|
Flag categorize labels on streams response (#10419)
We recently introduced support for ingesting and querying structured metadata in Loki. This adds a new dimension to Loki's labels since now we arguably have three categories of labels: _stream_, _structured metadata_, and _parsed_ labels. Depending on the origin of the labels, they should be used in LogQL expressions differently to achieve optimal performance. _stream_ labels should be added to stream matchers, _structured metadata_ labels should be used in a filter expression before any parsing expression, and _parsed_ labels should be placed after the parser expression extracting them. The Grafana UI has a hard time dealing with this same problem. Before https://github.com/grafana/grafana/pull/73955, the filtering functionality in Grafana was broken since it was not able to distinguish between _stream_ and _structured metadata_ labels. Also, as soon as a parser expression was added to the query, filters added by Grafana would be appended to the end of the query regardless of the label category. The PR above implements a workaround for this problem but needs a better API on Loki's end to mitigate all corner cases. Loki currently returns the following JSON for log queries: ```json ... { "stream": { "cluster": "us-central", "container": "query-frontend", "namespace": "loki", "level": "info", "traceID": "68810cf0c94bfcca" }, "values": [ [ "1693996529000222496", "1693996529000222496 aaaaaaaaa.....\n" ], ... }, { "stream": { "cluster": "us-central", "container": "query-frontend", "namespace": "loki", "level": "debug", "traceID": "a7116cj54c4bjz8s" }, "values": [ [ "1693996529000222497", "1693996529000222497 bbbbbbbbb.....\n" ], ... }, ... ``` As can be seen, there is no way we can distinguish the category of each label. This PR introduces a new flag `X-Loki-Response-Encoding-Flags: categorize-labels` that makes Loki return categorized labels as follows: ```json ... { "stream": { "cluster": "us-central", "container": "query-frontend", "namespace": "loki", }, "values": [ [ "1693996529000222496", "1693996529000222496 aaaaaaaaa.....\n", { "structuredMetadata": { "traceID": "68810cf0c94bfcca" }, "parsed": { "level": "info" } } ], [ "1693996529000222497", "1693996529000222497 bbbbbbbbb.....\n", { "structuredMetadata": { "traceID": "a7116cj54c4bjz8s" }, "parsed": { "level": "debug" } } ], ... }, ... ``` Note that this PR only supports log queries, not metric queries. From a UX perspective, being able to categorize labels in metric queries doesn't have any benefit yet. Having said that, supporting this for metric queries would require some minor refactoring on top of what has been implemented here. If we decide to do that, I think we should do it on a separate PR to avoid making this PR even larger. I also decided to leave out support for Tail queries to avoid making this PR even larger. Once this one gets merged, we can work to support tailing. --- **Note to reviewers** This PR is huge since we need to forward categorized all over the codebase (from parsing logs all the way to marshaling), fortunately, many of the changes come from updating tests and refactoring iterators. Tested out in a dev cell with query `'{stream="stdout"} | label_format new="text"`. - Without the new flag: ``` $ http http://127.0.0.1:3100/loki/api/v1/query_range\?direction\=BACKWARD\&end\=1693996529322486000\&limit\=30\&query\=%7Bstream%3D%22stdout%22%7D+%7C+label_format+new%3D%22text%22\&start\=1693992929322486000 X-Scope-Orgid:REDACTED { "data": { "result": [ { "stream": { "new": "text", "pod": "loki-canary-986bd6f4b-xqmb7", "stream": "stdout" }, "values": [ [ "1693996529000222496", "1693996529000222496 pppppppppppp...\n" ], [ "1693996528499160852", "1693996528499160852 pppppppppppp...\n" ], ... ``` - With the new flag ``` $ http http://127.0.0.1:3100/loki/api/v1/query_range\?direction\=BACKWARD\&end\=1693996529322486000\&limit\=30\&query\=%7Bstream%3D%22stdout%22%7D+%7C+label_format+new%3D%22text%22\&start\=1693992929322486000 X-Scope-Orgid:REDACTED X-Loki-Response-Encoding-Flags:categorize-labels { "data": { "encodingFlags": [ "categorize-labels" ], "result": [ { "stream": { "pod": "loki-canary-986bd6f4b-xqmb7", "stream": "stdout" }, "values": [ [ "1693996529000222496", "1693996529000222496 pppppppppppp...\n", { "parsed": { "new": "text" } } ], [ "1693996528499160852", "1693996528499160852 pppppppppppp...\n", { "parsed": { "new": "text" } } ], ... ``` |
3 years ago |
|
|
6069df8f7d
|
ingestion: native otlp ingestion support (#10727)
**What this PR does / why we need it**: Add support for natively supporting logs ingestion in OTLP format. `/otlp/v1/logs` is the new endpoint where users can push logs in OTLP format. It accepts logs serialized in JSON or proto format. Since OTEL format is very different than what Loki storage model, here is how data in OTEL format will be mapped to Loki data model: * Index labels: The Resource Attributes map quite well to Index labels in Loki since both usually identify the source of the logs. The problem however is that Resource attributes in OTLP can have an unbounded number of values while Loki has a default limit of having up to 30 labels. Since Index labels in Loki can largely drive the kind of querying experience the users are going to have, we have chosen select attributes which would be picked as Index Labels. The ones that are not picked up as Index labels would be stored as Structured Metadata with each log entry. * Timestamp: LogRecord.TimeUnixNano * LogLine: LogRecord.Body holds the body of the log. However, since Loki only supports Log body in string format, we will stringify non-string values using [AsString method from OTEL collector lib]( |
3 years ago |
|
|
9fcc42dc48
|
Support protobuf `QueryRequest` in querier. (#10858)
**What this PR does / why we need it**:
This is one step to support pure protobuf encoding without `httpgrpc`.
It is only on the scheduler and is fully backwards compatible.
**Which issue(s) this PR fixes**:
This is a sub change of https://github.com/grafana/loki/pull/10688
**Checklist**
- [ ] Reviewed the
[`CONTRIBUTING.md`](https://github.com/grafana/loki/blob/main/CONTRIBUTING.md)
guide (**required**)
- [ ] Documentation added
- [x] Tests updated
- [ ] `CHANGELOG.md` updated
- [ ] If the change is worth mentioning in the release notes, add
`add-to-release-notes` label
- [ ] Changes that require user attention or interaction to upgrade are
documented in `docs/sources/setup/upgrade/_index.md`
- [ ] For Helm chart changes bump the Helm chart version in
`production/helm/loki/Chart.yaml` and update
`production/helm/loki/CHANGELOG.md` and
`production/helm/loki/README.md`. [Example
PR](
|
3 years ago |
|
|
00a3c5b026
|
renamed `non indexed labels` feature to `structured metadata` (#10432)
Loki team has made a decision to rename the feature because the new name is more precise. --------- Signed-off-by: Vladyslav Diachenko <vlad.diachenko@grafana.com> Co-authored-by: Salva Corts <salva.corts@grafana.com> |
3 years ago |
|
|
bde65667f7
|
Upgrade dskit to use packages migrated from weaveworks/common (#10164)
**What this PR does / why we need it**:
This PR upgrades dskit and replaces use of packages from
weaveworks/common with their migrated equivalents in dskit. See
https://github.com/grafana/dskit/pull/342 for more details.
Note that Loki still uses some packages from weaveworks/common that I
haven't migrated (`aws` and `test`) - I'll migrate these separately.
If this PR needs to be rebuilt, I used `rewrite.sh`
([source](https://gist.github.com/charleskorn/48efe62a09d6d70f3de30327003df5c5#file-rewrite-sh))
to generate most of these changes.
**Which issue(s) this PR fixes**:
(none)
**Special notes for your reviewer**:
(none)
**Checklist**
- [x] Reviewed the
[`CONTRIBUTING.md`](https://github.com/grafana/loki/blob/main/CONTRIBUTING.md)
guide (**required**)
- [n/a] Documentation added
- [n/a] Tests updated
- [n/a] `CHANGELOG.md` updated
- [n/a] If the change is worth mentioning in the release notes, add
`add-to-release-notes` label
- [n/a] Changes that require user attention or interaction to upgrade
are documented in `docs/sources/setup/upgrade/_index.md`
- [n/a] For Helm chart changes bump the Helm chart version in
`production/helm/loki/Chart.yaml` and update
`production/helm/loki/CHANGELOG.md` and
`production/helm/loki/README.md`. [Example
PR](
|
3 years ago |
|
|
a0e9f1aeb5
|
Make naming consistent for non-Indexed labels (#10024)
**What this PR does / why we need it**:
We started using _metadata_ to refer to _non-indexed labels_. This PR
replaces all the _metadata_ usages and renames them to _non-indexed
labels_.
**Checklist**
- [ ] Reviewed the
[`CONTRIBUTING.md`](https://github.com/grafana/loki/blob/main/CONTRIBUTING.md)
guide (**required**)
- [ ] Documentation added
- [ ] Tests updated
- [ ] `CHANGELOG.md` updated
- [ ] If the change is worth mentioning in the release notes, add
`add-to-release-notes` label
- [ ] Changes that require user attention or interaction to upgrade are
documented in `docs/sources/setup/upgrade/_index.md`
- [ ] For Helm chart changes bump the Helm chart version in
`production/helm/loki/Chart.yaml` and update
`production/helm/loki/CHANGELOG.md` and
`production/helm/loki/README.md`. [Example
PR](
|
3 years ago |
|
|
aae13c376d
|
Add metadata to push payload (#9694)
**What this PR does / why we need it**: We are adding support for attaching labels to each log line. This is one of the series of the PRs broken up to make it easier to review changes. This PR updates the push payload to send labels with each log entry optionally. The log labels are supposed to be in the same format as the stream labels. Just to put it out, here is how it would look for proto and json push payload with same data: **proto(`endpoint`: `(/loki/api/v1/push|/api/prom/push)`, `Content-Type`: `application/x-protobuf`)**(payload built using [push.Stream]( |
3 years ago |
|
|
5cef03d0ea
|
index-shipper: add support for multiple stores (#7754)
Signed-off-by: Ashwanth Goli <iamashwanth@gmail.com>
**What this PR does / why we need it**:
Currently loki initializes a single instance of index-shipper to [handle
all the table
ranges](
|
3 years ago |
|
|
33e44ed39d
|
Ruler: remote rule evaluation (#8744)
**What this PR does / why we need it**: Adds the ability to evaluate recording & alerting rules against a given `query-frontend`, allowing these queries to be executed with all the parallelisation & optimisation that regular adhoc queries have. This is important because with `local` evaluation all queries are single-threaded, and rules that evaluate a large range/volume of data may timeout or OOM the `ruler` itself, leading to missed metrics or alerts. When `remote` evaluation mode is enabled, the `ruler` effectively just becomes a gRPC client for the `query-frontend`, which will dramatically improve the reliability of the `ruler` and also drastically reduce its resource requirements. **Which issue(s) this PR fixes**: This PR implements the feature discussed in https://github.com/grafana/loki/pull/8129 (**LID 0002: Remote Rule Evaluation**). |
3 years ago |
|
|
28ebf8ec12
|
Impose per-request limit on label queries. (#8777)
**What this PR does / why we need it**: #8727 introduced per-request limits. These should be enforce for label queries as well. This change adds the required middleware to all label query endpoints. **Checklist** - [ ] Reviewed the [`CONTRIBUTING.md`](https://github.com/grafana/loki/blob/main/CONTRIBUTING.md) guide (**required**) - [ ] Documentation added - [x] Tests updated - [ ] `CHANGELOG.md` updated - [ ] Changes that require user attention or interaction to upgrade are documented in `docs/sources/upgrading/_index.md` |
3 years ago |
|
|
5a85f6647e
|
Add initial implementation of per-query limits (#8727)
**What this PR does / why we need it**: Sometimes we want to limit the impact of a single query by imposing limits that are stricter than the current tenant limit. E.g. the maximum query length could be seven days but based on the query or an admins decision a query should just have a maximum length of one day. This is where per-request limits come into play. They are passed via the `X-Loki-Query-Limit` header and extracted into the requests context. It is the responsibility of the operator or admin that the header is valid. **Which issue(s) this PR fixes**: Fixes #8762 **Checklist** - [ ] Reviewed the [`CONTRIBUTING.md`](https://github.com/grafana/loki/blob/main/CONTRIBUTING.md) guide (**required**) - [ ] Documentation added - [x] Tests updated - [x] `CHANGELOG.md` updated - [x] Changes that require user attention or interaction to upgrade are documented in `docs/sources/upgrading/_index.md` --------- Signed-off-by: Callum Styan <callumstyan@gmail.com> Co-authored-by: Karsten Jeschkies <karsten.jeschkies@grafana.com> |
3 years ago |
|
|
20b13cb317
|
Fix comparison in a delete request integration test (#8389)
Signed-off-by: Michel Hollands <michel.hollands@grafana.com> |
3 years ago |
|
|
b2d0481cbe
|
deletion: fix log deletion with line filters (#8151)
|
3 years ago |
|
|
2dc5a71a67
|
Tests: Reduce flakiness of GCPLog and integration tests (#7273)
**What this PR does / why we need it**: - Reduce flakiness of GCPLog tests by reusing context and stopping GCP topic - Reduce flakiness of integration tests by: - using port as they're assigned - reusing context - adding timeout to calls (hence, if something get stuck, tests fail earlier) |
4 years ago |
|
|
3d4788fb51
|
Add ability for Ruler to remote write to multiple clients (#6823)
|
4 years ago |
|
|
65e3148bc9
|
Update delete integration test (#6192)
* Add wait until processed Signed-off-by: Michel Hollands <michel.hollands@grafana.com> * Add query lines Signed-off-by: Michel Hollands <michel.hollands@grafana.com> * Remove Cortex reference Signed-off-by: Michel Hollands <michel.hollands@grafana.com> * Add deleted lines metric and check in test Signed-off-by: Michel Hollands <michel.hollands@grafana.com> * Set negative cancel period so default 1 minute delay is compensated for Signed-off-by: Michel Hollands <michel.hollands@grafana.com> * Reduce timeout Signed-off-by: Michel Hollands <michel.hollands@grafana.com> * Add helper function Signed-off-by: Michel Hollands <michel.hollands@grafana.com> * Comment out assertions that only work with flush Signed-off-by: Michel Hollands <michel.hollands@grafana.com> * Remove unused metric type param Signed-off-by: Michel Hollands <michel.hollands@grafana.com> * Check counter in unit test Signed-off-by: Michel Hollands <michel.hollands@grafana.com> * Rename ClientOption to Option as per the linter Signed-off-by: Michel Hollands <michel.hollands@grafana.com> * Remove redundant check Signed-off-by: Michel Hollands <michel.hollands@grafana.com> * fill in MsgAndArgs field of test assertion Signed-off-by: Michel Hollands <michel.hollands@grafana.com> |
4 years ago |
|
|
b6ff9d5889
|
Add integration test for delete request (#6188)
* Add integration test for delete request Signed-off-by: Michel Hollands <michel.hollands@grafana.com> * Add line filter Signed-off-by: Michel Hollands <michel.hollands@grafana.com> |
4 years ago |
|
|
213bb86802
|
Add integration tests which test happy path (#5968)
* Add integration tests which test happy path This PR adds simple go based integration tests, which can run Loki in two modes: - single-binary - micro-services with index-gateway After standing up it performs the most basic duties like: - ingest logs - run a range query - query label names and label values This is meant to catch more significant problem as early as possible in the PR. We should aim to keep this as simple as possible. * Replace config generation with template Makes configuration much more readable and avoids easy mistakes * Apply suggestions from code review Co-authored-by: Michel Hollands <42814411+MichelHollands@users.noreply.github.com> Co-authored-by: Michel Hollands <42814411+MichelHollands@users.noreply.github.com> |
4 years ago |