mirror of https://github.com/grafana/loki
Tag:
Branch:
Tree:
bcdc807dd3
18060-enhance-log-level-detection-for-unstructured-logs
2.9.15RN
2.9.x-bump-golang
2005.12.08-limits
2023-03-16-new-query-limits
2025.08.04_metricsQuery
2025.12.02_troubleshooting-ingest
56quarters/vendor-updates
7139-json-properties-in-log-line-is-not-sorted
Alex3k-patch-1
Alex3k-patch-2
Alex3k-patch-3
Alex3k-patch-5
Alex3k-patch-6
JStickler-patch-1
RN-35
SE_16669
TR-query4
TR-query5
add-10055-to-release-notes
add-10193-to-release-notes
add-10213-to-release-notes
add-10281-to-release-notes
add-10417-to-release-notes
add-12403-to-release-notes
add-9063-to-release-notes
add-9484-to-release-notes
add-9568-to-release-notes
add-9704-to-release-notes
add-9857-to-release-notes
add-blooms-flag-to-index-lookup
add-bucket-name-to-objclient-metric
add-claude-github-actions-1755010590637
add-claude-github-actions-1755010669077
add-containerSecurityContext-to-statefulset-backend-sidecar
add-max-flushes-retries
add-page-count-to-dataobj-inspect
add-per-scope-limits
add-time-snap-middleware
add_metrics_namespace_setting
add_series_chunk_filter_test
add_vector_to_lokitool_tests
added-hints-to-try-explore-logs
adeverteuil-patch-1
aengusrooneygrafana-update-doc-pack-md
akhilanarayanan/dountilquorum
akhilanarayanan/query-escaping
akhilanarayanan/replace-do-with-dountilquorum2
alt-err-prop
andrewthomas92-patch-1
andrii/fix_default_value_for_sasl_auth
arrow-engine/stitch-store-and-engine
arve/remove_global_name_validation
ashwanth/remove-unordered-writes-config
ashwanth/restructure-query-section
ashwanth/skip-tsdb-load-on-err
attempt-count-streams-per-query
auto-remove-unhealthy-distributors
auto-triager
automated-helm-chart-update/2023-02-01-05-30-47
automated-helm-chart-update/2023-04-05-19-46-39
automated-helm-chart-update/2023-04-24-20-56-21
automated-helm-chart-update/2023-04-24-22-40-04
automated-helm-chart-update/2023-09-07-18-09-02
automated-helm-chart-update/2023-09-14-16-23-44
automated-helm-chart-update/2023-10-16-14-20-07
automated-helm-chart-update/2023-10-18-10-10-52
automated-helm-chart-update/2023-10-18-13-14-43
automated-helm-chart-update/2024-01-24-16-05-59
automated-helm-chart-update/2024-04-08-19-24-50
aws-bug
azuretaketwo
backport-10090-to-k160
backport-10101-to-release-2.9.x
backport-10221-to-release-2.8.x
backport-10318-to-k163
backport-10687-to-release-2.9.x
backport-11251-to-k175
backport-11827-to-k186
backport-13116-to-release-3.2.x
backport-13116-to-release-3.3.x
backport-13225-to-main
backport-14221-to-release-3.2.x
backport-14780-to-release-3.2.x
backport-15483-to-release-3.3.x
backport-16045-to-k239
backport-16203-to-k242
backport-16954-to-main
backport-17054-to-k249
backport-17129-to-k277
backport-18538-to-release-3.4.x
backport-8893-to-release-2.6.x
backport-8971-to-release-2.7.x
backport-9176-to-release-2.8.x
backport-9757-to-release-2.8.x
backport-9978-to-k158
backport-9978-to-k159
backport-b57d260dd
benclive/add-alternative-int64-encoder-dataobj
benclive/add-index-ptr-to-inspect
benclive/add-unique-parsed-keys-to-pointers
benclive/customize-client-params
benclive/dont-apply-limit-under-filter-exp
benclive/exp-query-comparator
benclive/fix-index-entries-for-single-tenant-objects
benclive/fix-some-data-races
benclive/hedge-requests-exp
benclive/implement-strict-logfmt-parsing-main
benclive/index-testing-wip
benclive/multi-tenant-toc
benclive/parquet-bench-experiment
benclive/query-fixes
benclive/respect-encoding-flags-compat
benclive/scan-kafka
benclive/serialize-stats-on-wire
benclive/sort-descriptions-before-return
benclive/sort-descriptors
benclive/test-fix-empty-matchers
benton/loki-mixin-updates
benton/loki-mixin-v2
better-batches
better-log-line-level-detection
blockbuilder-timespan
blockscheduler-track-commits
bound-parallelism-slicefor
buffered-kafka-reads
build-samples-based-on-num-chunks-size
callum-builder-basemap-lock
callum-explainer-hack
callum-hackathon-explainer
callum-iterator-arrow-record
callum-k136-jsonnet-fix
callum-lambda-promtail-test
callum-parallelize-first-last
callum-pipeline-sanitize-sm-values
callum-prob-step-eval
callum-quantile-inner-child
callum-query-limits-validation
callum-querylimit-pointers
callum-remove-epool
callum-ruler-local-warn
callum-s3-prefix-metric
callum-shard-last
callum-snappy-exp
callum-stream_limit-insights
callum-track-max-labels
chaudum/batch-log-enqueue-dequeue
chaudum/benchmark-reassign-queriers
chaudum/bloomfilter-e2e-parallel-requests
chaudum/bloomfilter-jsonnet
chaudum/bloomgateway-client-tracing
chaudum/bloomgateway-testing
chaudum/bloomstore-cache-test
chaudum/bloomstore-fetch-blocks
chaudum/bump-helm-4.4.3
chaudum/canary-actor
chaudum/chaudum/query-execution-pull-iterators
chaudum/chunk-compression-read-benchmark
chaudum/cleanup-ingester
chaudum/cmp-fix
chaudum/compactor-list-objects
chaudum/cri-config
chaudum/day-chunks-iter-test
chaudum/debug-compat
chaudum/debug-skipped
chaudum/distributor-healthcheck
chaudum/dockerfmt
chaudum/fix-flaky-multitenant-e2e-test
chaudum/fix-generate-benchmark-data-for-new-indexes
chaudum/fix-max-query-range-limit
chaudum/fix-predicate-from-matcher
chaudum/fixed-size-memory-ringbuffer
chaudum/generic-dataobj-section
chaudum/grpc-transport
chaudum/hackathon-analyze-pipelines
chaudum/hackathon-analyze-pipelines-v2
chaudum/hackathon-analyze-pipelines-v3
chaudum/hashwithoutlabels
chaudum/helm-remove-image-override-for-gel
chaudum/improve-git-fetch-makefile
chaudum/improve-timestamp-parsing
chaudum/index-gateway-instrumentation-k204
chaudum/instant-query-benchmarks
chaudum/integration-test-startup-timeout
chaudum/k204-index-gateway
chaudum/k259
chaudum/linked-map
chaudum/local-index-query
chaudum/logcli-load-multiple-schemaconfig
chaudum/loki-query-engine-ui
chaudum/make-bloomfilter-task-cancelable
chaudum/metastore-caching
chaudum/native-docker-builds
chaudum/new-engine-sharding
chaudum/page-cache
chaudum/physical-plan-optimizer-visitor-pattern
chaudum/querier-worker-cpu-affinity
chaudum/query-execution
chaudum/query-executor-4
chaudum/query-skip-factor
chaudum/remove-bigtable-backend
chaudum/remove-boltdb-backend
chaudum/remove-cassandra-backend
chaudum/remove-deprecated-storage-backends
chaudum/remove-dynamodb-backend
chaudum/rewrite-runtime-config
chaudum/run-query-engine-in-frontend
chaudum/seek-panic
chaudum/shard-by-section-k258
chaudum/shared-compressors
chaudum/sort-by-timestamp
chaudum/sort-dataobj-sections-by-timestamp-desc-parallelise
chaudum/syslog-udp-cleanup-idle-streams
chaudum/topk-popall
check-inverse-postings
cherrypick-9484-k151
chunk-inspect-read-corrupt
chunk-query
chunks-inspect-v4-read-corrupt
chunks_compaction_research
chunkv5
cle_updates
cleanup-campsite/removing-deprecations
cleanup-migrate
codeowners-mixins-20240925
context-cause-usage
correct-kafka-metric-names
correctly-propagates-ctx
crypto
crypto2
cursor/analyze-index-gateway-performance-changes-between-branches-4f9d
cursor/audit-license-change-commits-de87
cursor/compare-grafana-database-architectures-6434
cursor/compare-grafana-database-architectures-9478
cursor/compare-grafana-database-architectures-bc02
cursor/create-lightweight-loki-client-module-74c9
cursor/create-lightweight-loki-client-module-e1fe
cursor/extract-loki-client-utilities-to-new-module-2891
cursor/investigate-recent-api-response-changes-82fb
cursor/update-loki-opentelemetry-dependencies-efe4
custom-headers
dannykopping/groupcache-instrument
dannykopping/memcached-slab-allocator
dannykopping/remove-cache-stats
danstadler-pdx-patch-1
danstadler-pdx-patch-2
data-race-fix-01
dataobj
dataobj-compression-ratio-and-final-size
dataobj-comsumer-metastore-orig
dataobj-log-batches
dataobj-logs-sort
dataobj-logs-sortorder
dataobj-querier-logger
dataobj-reader-stats
dataobj-shard-debug
dataobj-store-sort-order
dataset-reader-fill-fail
debug-bloomgateway
dedup-only-partitions
del-ashwanth-custom
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
deprecatable-metrics-example
deps-update/main-alpine
deps-update/main-fluentfluent-bit
deps-update/main-github.comapachearrow-gov18
deps-update/main-github.comawsaws-sdk-go-v2config
deps-update/main-github.comawsaws-sdk-go-v2servicedynamodb
deps-update/main-github.comawsaws-sdk-go-v2services3
deps-update/main-github.combaidubcebce-sdk-go
deps-update/main-github.comgrafanalokiv3
deps-update/main-github.cominfluxdatatelegraf
deps-update/main-github.comparquet-goparquet-go
deps-update/main-github.compierreclz4v4
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.iootel
deps-update/main-go.opentelemetry.iootelsdk
deps-update/main-go.opentelemetry.iooteltrace
deps-update/main-golang.orgxcrypto
deps-update/main-golang.orgxnet
deps-update/main-golang.orgxtext
deps-update/main-google.golang.orgprotobuf
deps-update/main-hashicorpaws
deps-update/main-hashicorpgoogle
deps-update/main-https-github.comgrafanaloki.git
deps-update/main-rollout-operator
detected-labels-add-limits-param
detected-labels-from-store
detected-labels-minor-enhancements
dev-rel-workshop
dfinnegan-fgh-patch-1
digitalemil-patch-1
digitalemil-patch-2
digitalemil-patch-3
digitalemil-patch-4
dimitarvdimitrov-patch-1
dirlldown-config-endpoint__devenv
distributed-helm-chart
distributed-helm-demo
distributors-exp-avg
do-not-retry-enforced-labels-error
do-until-quorom-wip
doanbutar-patch-1
doanbutar-patch-2
docs-ipv6
docs-nvdh-log-queries
dodson/admonitions
dont-log-every-indexset-call-
dont-sync-old-tables
ej25a-patch-1
emit-events-without-debuggnig
enable-hedging-on-ingester-requests
enable-limitedpusherrorslogging-by-default
enable-stream-sharding
enforce-sharding-of-approx-topk-queries
engine-batchsize-metric
exceeds-rate-limit-check
executor-lazypipeline
explore-logs-fallback-query-path
faster-cleanupexpired
faster-truncate-log-lines
fastest-path-return
fcjack/image-workflows
fcjack/test-agent-lables
feat-multi-tenant-topics
feat/drain-format
feat/pattern-pattern-mining
feat/syslog-rfc3164-defaultyear
feat/usage-tracker
filter-node-pushdown
fix-2.8-references
fix-discarded-otlp-volume
fix-headers
fix-helm-bucket-issue
fix-helm-enterprise-values
fix-helmchart
fix-igw-job
fix-image-tag-script
fix-legacy-panels
fix-object-storage
fix-orphan-spans
fix-otlp-exporter-metric
fix-promtail-cves
fix-release-lib-shellcheck
fix-stream-generator-locks
fix/pattern-merge
fix_more_dashboards
fix_windowsserver_version
fmt-jsonnet-fix
force-loki-helm-publish
get-marked-for-deletions
gh-action-labeler-fix
gh-readonly-queue/main/pr-11793-215b5fd2fd71574e454529b1b620a295f1323dac
goldfish-rds-args-k279
goldfish-ui-improvements-2
goldfish-ui-k263
grafana-dylan-patch-1
grobinson/add-kafkav2
grobinson/fix-race-condition-in-tracker
grobinson/rate-metric-to-compare
grobinson/segmentation-key-demo
grobinson/track-consumption-lag-offsets
grobinson/use-local-distributor-rate-store-segmentation-keys
groupcache
gtk-grafana/drilldown-config-endpoint__devenv
guard-againts-non-scheduler-request
guard-ingester-detected-field-errors
hackathon-2023-08-events-in-graphite-proxy
hackathon/demo
hackathon/hackathon-2023-12-arrow-engine
handle-errors-per-category
hedge-index-gateway
hedge-index-gateway-220
helm-5.47.3
helm-5.48
helm-chart-tagged-6.20.0
helm-chart-tagged-6.26.0
helm-chart-tagged-6.27.0
helm-chart-tagged-6.28.0
helm-chart-tagged-6.30.0
helm-chart-tagged-6.31.0
helm-chart-tagged-6.32.0
helm-chart-tagged-6.47.0
helm-chart-weekly-6.24.0-weekly.233
helm-chart-weekly-6.25.0-weekly.234
helm-chart-weekly-6.25.0-weekly.235
helm-chart-weekly-6.25.0-weekly.236
helm-chart-weekly-6.25.0-weekly.237
helm-chart-weekly-6.26.0
helm-chart-weekly-6.26.0-weekly.238
helm-chart-weekly-6.26.0-weekly.239
helm-chart-weekly-6.26.0-weekly.240
helm-chart-weekly-6.26.0-weekly.241
helm-chart-weekly-6.28.0-weekly.242
helm-chart-weekly-6.28.0-weekly.243
helm-chart-weekly-6.28.0-weekly.244
helm-chart-weekly-6.29.0-weekly.245
helm-chart-weekly-6.29.0-weekly.246
helm-chart-weekly-6.29.0-weekly.247
helm-chart-weekly-6.30.0
helm-chart-weekly-6.47.0
helm-chart-weekly-6.50.0
helm-loki-values-backend-target
high-load-gateway
hot-fix-breaking-change
ignore-yaml-errors
improve-benchtest-dataset
improve-cleanup-stats
improve-distributor-latency
index-gateways/reduce-goroutines
index-stats
ingest-limits-reader-client-optimization
ingest-pipelines
inline-tsdb-on-cache
integrate-laser
intentional-failure
is-this-qfs-cure
ivkalita/metastore-distributed-plus-scheduler
ivkalita/metastore-merge-nodes
jdb/2022-10-enterprise-logs-content-reuse
jdb/2023-03-update-doc.mk
jdb/2025-05/add-docs-license
jsonnet-update/2023-01-31-10-09-02
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
k131-no-validate-matchers-labels
k132
k133
k135
k135-sharding-hotfix
k136
k137
k138
k139
k14
k140
k141
k142
k143
k144
k145
k146
k146-with-chunk-logging
k147
k148
k149
k15
k150
k150-merge-itr-fix
k151
k152
k153
k154
k155
k156
k157
k158
k159
k16
k160
k161
k162
k163
k164
k165
k166
k167
k168
k168-ewelch-concurrency-limits
k169
k17
k170
k171
k171-with-retry
k172
k173
k174
k174-fixes2
k175
k176
k177
k178
k179
k18
k180
k181
k182
k183
k183-quantile-patch
k184
k185
k185-fix-previous-tsdb
k186
k187
k188
k189
k19
k190
k191
k192
k193
k194
k195
k195-backup
k196
k197
k198
k199
k199-debug
k20
k200
k201
k202
k203
k203-with-samples
k204
k204-separate-download
k205
k205-with-samples
k206
k207
k207-ingester-profiling-2
k208
k209
k209-ewelch-idx-gateway-hedging
k21
k210
k210-ewelch-idx-gateway-hedge
k210-ewelch-shard-limited
k211
k211-ewelch-congestion-control
k211-ewelch-datasample
k211-ewelch-test-frontend-changes
k212
k213
k213-ewelch
k214
k215
k216
k217
k217-alloy-v1.7-fork
k217-without-promlog
k218
k219
k22
k220
k220-index-sync
k220-move-detected-fields-logic-to-qf
k220-with-detected-fields-guard
k221
k221-index-sync-fixes
k221-with-stream-logging
k222
k222-shard-volume-queries
k228
k229
k23
k230
k231
k232
k233
k234
k235
k236
k236-with-agg-metric-payload-fix
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
k256-ewelch-distributor
k257
k257-ewelch-max-query-series
k258
k259
k26
k260
k261
k262
k262-limit-patterns-2
k262-limit-patterns-test
k263
k263-log-labels-string
k264
k265
k266
k267
k268
k269
k27
k270
k271
k271-pattern-volume
k272
k272-ewelch
k273
k274
k274-7a1d4f729e
k275
k276
k276-dataobj-sort
k277
k278
k278-ewelch
k278-goldfish-storage
k279
k28
k280
k281
k282
k283
k284
k284-ewelch
k284-metastore-improv
k285
k286
k287
k29
k30
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
kadjoudi-patch-1
kafka-usage-wip
kafka-wal-block
karsten/dedup-overlapping-chunks
karsten/first-over-time
karsten/fix-grpc-error
karsten/protos-query-request
karsten/test-ops
kaviraj/changelog-logql-bug
kaviraj/memcached-backup-tmp
kaviraj/single-gomod
kavirajk/backport-10319-release-2.9.x
kavirajk/bug-fix-memcached-multi-fetch
kavirajk/cache-instant-queries
kavirajk/cache-test
kavirajk/experiment-instant-query-bug
kavirajk/fix-engine-literalevaluator
kavirajk/linefilte-path-on-top-of-k196
kavirajk/memcache-cancellation-bug-fix
kavirajk/metadata-cache-with-k183
kavirajk/promtail-use-inotify
kavirajk/script-to-update-example
kavirajk/update-go-version-gomod
kavirajk/upgrade-prometheus-0.46
kavirajk/url-encode-aws-url
label-filter-predicate-pushdown
lambda-promtail-generic-s3
leizor/latest-produce-ts
leizor/rate-limiter-hack
leizor/rate-limiter-hack-clean
limit-patterns-k263
limit-streams-chunks-subquery
logcli-copy-chunks
logcli_object_store_failure_logging
logfmt-unwrap-queries
logql-correctness-memlimit
loki-bench-tool
loki-config-json
loki-mixin-parallel-read-path
loki-streaming-query-api
lru-symbols-cache
lru-symbols-cache-w-conn-limits
main
make-section-filter-tenant-aware
map-streams-to-ingestion-scope
marinnedea-patch-1
mdc-loki-helm
mdsgrafana-patch-1
meher/handle-wal-corruption-on-startup
meher/log-partition-ring-cache-map-size
meher/parition-ring-manual-disable
meher/query-lab
meher/regexp-engine-v2
merge-pipeline-parallelism
mess-with-multiplegrpcconfigs
meta-monitoring-v2-p2
metadata-decoder-corrections
metastore-bootstrap
metastore-experiments
metric-query-testing
metricq-benchmark-delete-later
more-date-functions
more-details-tracing-for-distributors
more-release-testing
multi-zone-topology-support
new-index-spans
new-tests
no-extents-no-problem
operator-loki-v3
optimize-otlp-efficiency
otlp-severity-detection
owen-d/fix/nil-ptr-due-to-empty-resp
pablo/lambda-promtail-event-bridge-setup
pablo/promtail-wal-support
pablo/refactor-client-manager
pablo/refactor-http-targets
panic-if-builder-fails-to-init
panic_query_frontend_test
parallelise-merge-tables
parser-hints/bug
paul1r/ingester_startup
paul1r/poc_partition_inactive
paul1r/republish_lambda_promtail
periklis/k280-max-query-bytes-read
periklis/max-query-bytes-read
pooling-decode-buffers-dataobj
poyzannur/add-pdb-idx-gws
poyzannur/fix-blooms-checksum-bug
poyzannur/fix-compactor-starting-indexshipper-in-RW-mode
poyzannur/fix-errors-introduced-by-10748
poyzannur/fix-flaky-test
poyzans-query
pr-19328
pr-logfmt-1-foundation
pr-logfmt-2-planner
pr-logfmt-3-tokenizer
pr-logfmt-4-executor
pr_11086
pre-build-predicates
prepare-2.8-changelog
promtail-go-gelf
ptodev/reset-promtail-metrics-archive-23-april-2024
ptodev/update-win-eventlog
pub-sub-cancel
query-limits-validation
query-splitting-api
query-timestamp-validation
ratestore-standalone
rbrady/16330-fix-rolebinding-provisioner
read-corrupt-blocks
read-path-improvement-wal
reenable-ipv6-for-memberlist
refactor-extractors-multiple-samples-2
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-notes-appender
release-please--branches--add-major-release-workflow
release-please--branches--fix-vuln-scanning
release-please--branches--k195
release-please--branches--k196
release-please--branches--k197
release-please--branches--k198
release-please--branches--k199
release-please--branches--k200
release-please--branches--k201
release-please--branches--k202
release-please--branches--k203
release-please--branches--k204
release-please--branches--k205
release-please--branches--k206
release-please--branches--k208
release-please--branches--k209
release-please--branches--k210
release-please--branches--k211
release-please--branches--k212
release-please--branches--k215
release-please--branches--k216
release-please--branches--k221
release-please--branches--k222
release-please--branches--k228
release-please--branches--k234
release-please--branches--k235
release-please--branches--k236
release-please--branches--k237
release-please--branches--k238
release-please--branches--k239
release-please--branches--k240
release-please--branches--k241
release-please--branches--k242
release-please--branches--k243
release-please--branches--k244
release-please--branches--k246
release-please--branches--k247
release-please--branches--k249
release-please--branches--k250
release-please--branches--k251
release-please--branches--k253
release-please--branches--k254
release-please--branches--k255
release-please--branches--k256
release-please--branches--k257
release-please--branches--k260
release-please--branches--k261
release-please--branches--k262
release-please--branches--k263
release-please--branches--k264
release-please--branches--k265
release-please--branches--k266
release-please--branches--k267
release-please--branches--k268
release-please--branches--k270
release-please--branches--k271
release-please--branches--k272
release-please--branches--k273
release-please--branches--k278
release-please--branches--main
release-please--branches--main--components--operator
release-please--branches--release-2.9.x
release-please--branches--release-3.0.x
release-please--branches--release-3.1.x
release-please--branches--release-3.2.x
release-please--branches--release-3.3.x
release-please--branches--update-release-pipeline
remove-early-eof
remove-loki-ui
remove-override
remove_lokitool_binary
retry-limits-middleware
reuse-server-index
revert-7179-azure_service_principal_auth
revert-8662
revert-map-pooling
rfratto/protobuf-physical-plans
rgnvldr-patch-1
rk/update-helm-docs
salvacorts/2.9.12/fix-vulns
salvacorts/backport-3.4.x
salvacorts/compator-deletes-acache
salvacorts/debugging-forward-log-queries
salvacorts/log-small-results-cache
salvacorts/query-bucket-rate-limit
samu6851-patch-1
samu6851-patch-2
scheduler-assignlock-granular
scheduler_contentions
scope-usage
shantanu/add-to-release-notes
shantanu/dedupe-with-sm
shantanu/fix-scalar-timestamp
shantanu/otlp-push-optimizations
shantanu/otlp_dots_support
shantanu/prom-upgrade-and-fixes
shantanu/remove-ruler-configs
shantanu/utf8-queries-no-quotes
shard-parsing
shard-volume-queries
shipper/skip-notready-on-sync
simulate-retention-endpoint
singleflight
sjwlabelfmt
sjwnodeproto
sjwpoolmemory
skip-worktrees
snyk-monitor-workflow
sp/logged_trace_id
spiridonov-bifunc-alloc
spiridonov-blast-test
spiridonov-parity-hacks-1
spiridonov-style-chore
split-rules-into-more-groups
split-tests-by-package
split-with-header
steven_2_8_docs
stop-using-retry-flag
store-aggregated-metrics-in-loki
store-aggregated-metrics-in-loki-3
store-calls-stat
stream-limit-fixes
stripe-lock-ctx-cancelation
structured-metadata-indexing
structured-metadata-push-down-3
svennergr-patch-1
svennergr/structured-metadata-api
tch/bestBranchEvverrrrrrrrrr
temp-fluentbit-change
temp-proto-fix
test-docker-plugin-publish
test-failcheck
test-gateway
test-helm-release
test-query-limits-fixes
test-release
test-workflow
test_PR
test_branch
testing-drain-params
testing-drain-params-2
thor-ingestion
thor-query-parser-correctness
tpatterson/cache-json-label-values
tpatterson/chunk-iterator
tpatterson/expose-partition-ring
tpatterson/generate-drone-yaml
tpatterson/label-matcher-optimizations
tpatterson/reporder-filters
tpatterson/revert-async-store-change
tpatterson/size-based-compaction-with-latest
tpatterson/space-compaction
tpatterson/stats-estimate
trace-labels-in-distributor
transform_mixin
trevorwhitney/detect-only-no-parser
trevorwhitney/how-to-make-a-pr
trevorwhitney/index-stats-perf-improvement
trevorwhitney/logcli-client-test
trevorwhitney/refactor-nix-folder
trevorwhitney/respect-tsdb-version-in-compactor
trevorwhitney/series-volume-fix
trevorwhitney/structured-metadata-push-down
trevorwhitney/upgrade-dskit
trevorwhitney/use-tsdb-version-from-schema-config
trevorwhitney/volume-memory-fix-k160
trigger-ci
try-new-span-chagnes
try-reverting-pr9404
tsdb-benchmark-setup
tulmah-patch-1
twhitney/query-tee-enable-racing
twhitney/refactor-parse-2
twhitney/structured-metadata-push-down
twhitney/thor-unwrap-2
undelete
update-docs-Running-Promtail-on-AWS-EC2-tutorial
update-workflows
updateCHANGELOG
upgrade-golang-jwt-2.9
upgrade33
usage-poc-combined
use-worker-pool-for-kafka-push
use-worker-pool-kafka-push
use_constant_for_loki_prefix
use_go_120_6
validate-retention-api
wip-stringlabels
wrap-downloading-file-errors
wrapped-http-codes-propagate
x160-ewelch-cache
x161-ewelch-l2-cache
x162-ewelch-memcached-connect-timeout
xcap-coverage
xcap-pipeline-inject
yinkagr-patch-1
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.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
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.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.2
v3.6.3
${ noResults }
2151 Commits (bcdc807dd34d7a4e2e1dcfdffecd869da66e6efe)
| Author | SHA1 | Message | Date |
|---|---|---|---|
|
|
125e168a91
|
Replace flaky server for log level handler test. (#9822)
**What this PR does / why we need it**:
I've noticed that the `TestLevelHandler` were flaky because the code
wasn't waiting to the server to be running. Since the test is for a
handler it's much simpler to call it directly with a response recorder.
**Checklist**
- [x] 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/upgrading/_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 |
|
|
1d20fdbf57
|
LogPushFailures: Log the tenant id (#9819)
**What this PR does / why we need it**: Modify the `writefailures.Manager` to - Log the tenant id. Otherwise, it is hard to identify which tenant is responsible for a problematic push - Log stream parsing failures **Which issue(s) this PR fixes**: N/A |
3 years ago |
|
|
d4cfbaac4f
|
Implement series volume range queries (#9812)
This PR adds a `series_volume_range` endpoint which allows for series volume queries over time with a specified step, returning timeseries data in the form of a Prometheus matrix response. The existing `series_volume` endpoint still returns Prometheus vector responses, and hardcodes the step to 0. |
3 years ago |
|
|
6cc581bd26
|
Add back cache stats for index stats requests (#9816)
**What this PR does / why we need it**:
In https://github.com/grafana/loki/pull/9536, we added cache stats for
index stats requests. That PR had a bug that inflated the query stats
due to reusing the stats context in the query engine. Therefore, we had
to revert the PR at https://github.com/grafana/loki/pull/9721.
This PR brings back the changes from
https://github.com/grafana/loki/pull/9536 but fixes the inflated starts
by no longer reusing the same context in the query engine, but rather
creating a new one for the shard resolver.
I tested it on a dev cluster and seems to be working fine. here's the
output for the same query:
**Stats with the bug from #9536**:
```
...
Cache.StatsResult.Requests 980
Cache.StatsResult.EntriesRequested 490
Cache.StatsResult.EntriesFound 0
Cache.StatsResult.EntriesStored 490
Cache.StatsResult.BytesSent 0 B
Cache.StatsResult.BytesReceived 0 B
...
Summary.BytesProcessedPerSecond 43 GB
Summary.LinesProcessedPerSecond 93305142
Summary.TotalBytesProcessed 945 GB
Summary.TotalLinesProcessed 2059694183
```
**Stats from _main_**
```
...
Summary.BytesProcessedPerSecond 1.6 GB
Summary.LinesProcessedPerSecond 3403718
Summary.TotalBytesProcessed 95 GB
Summary.TotalLinesProcessed 207971404
```
**Stats with fix in this PR**
```
..
Cache.StatsResult.Requests 132
Cache.StatsResult.EntriesRequested 66
Cache.StatsResult.EntriesFound 0
Cache.StatsResult.EntriesStored 66
Cache.StatsResult.BytesSent 0 B
Cache.StatsResult.BytesReceived 0 B
...
Summary.BytesProcessedPerSecond 4.3 GB
Summary.LinesProcessedPerSecond 9468900
Summary.TotalBytesProcessed 95 GB
Summary.TotalLinesProcessed 207793816
```
As can be seen, with the changes in this PR, the summary stats are no
longer inflated.
**Which issue(s) this PR fixes**:
Fixes https://github.com/grafana/loki/pull/9536
**Special notes for your reviewer**:
I think it's ok to skip reviewing the changes from the commit
cherry-picking the changes from
https://github.com/grafana/loki/pull/9536
**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/upgrading/_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 |
|
|
f9fc1df4c0
|
logfmt: add --strict flag to enable strict parsing, perform nostrict parsing by default (#9626)
**What this PR does / why we need it**: Introduces `--strict` flag for logfmt parser to enable strict parsing. With strict parsing enabled, logfmt parser stops scanning the log line and returns early with an error if it encounters any poorly formatted key=value pair. This pr updates the parser to perform non-strict parsing by default where it skips over the invalid tokens. This offers the flexibility to parse semi-structured log lines. Also adds `--keep-empty` flag to retain standalone keys(with empty value) as labels with value set to empty string **Special notes for your reviewer**: **Checklist** - [X] Reviewed the [`CONTRIBUTING.md`](https://github.com/grafana/loki/blob/main/CONTRIBUTING.md) guide (**required**) - [X] 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` --------- Co-authored-by: Michel Hollands <42814411+MichelHollands@users.noreply.github.com> |
3 years ago |
|
|
dc5d458c14
|
Failures logging: avoid logging generic errors (#9796)
**What this PR does / why we need it**: Modify our write path to not log generic messages with the `writefailures.Manager`. With generic messages I mean: contextCancel errors and contextDeadlineExceeded errors. **Which issue(s) this PR fixes**: N/A |
3 years ago |
|
|
08e505dd50
|
Return all errors for a failed push request (#9807)
**What this PR does / why we need it**: Distributors enforce limits and validate each push payload. before this PR, if a single push request yields multiple errors, only the last error is forwarded to the client. This PR modifies the distributor push handler so we forward all errors from a single push request to the client. **Which issue(s) this PR fixes**: Fixes #<issue number> **Special notes for your reviewer**: - I wonder if the use of [MultiError][1] is well-suited for this. [This test case][2] will return 100 errors with the same content. I wonder if we can leverage the MultiError to group errors that have the same content. Printing for example: `1 error like: 'Error parsing labels...'; 100 errors like: 'Max entry size...'`. This would require extra processing but If we do this processing in the Error() method I think it should be ok-ish? - **Edit:** I ended up implementing this in [ |
3 years ago |
|
|
e2a63e582c
|
adds tsdb-max-bytes-per-shard limit (#9811)
Adds the per tenant limit `tsdb-max-bytes-per-shard` which is used in configuring the shard size for tsdb subqueries. This effectively gives control over how big subqueries should be (assuming they're shardable). The default is no different (`600MB`) than the previously hardcoded initial value. This should help us iterate to find optimal shard sizes to improve operations in the long term. |
3 years ago |
|
|
a65c99d9bf
|
Add per-tenant request counter metric to index gateway server (#9797)
This commit add a counter metric `loki_index_gateway_requests_total` with labels `operation`, `tenant`, `status` for gRPC requests that are served by the index gateway. **What for?** The per-tenant RPS on the index gateway is used to derive the per-tenant shard factor. **Why tracking on the server?** Unlike tracking index gateway RPS on the client side, tracking on the server side does not yield that many series, even in multi-tenant installations with a lot of tenants, because the amount of index gateway instances is relatively small compared to the amount of queriers and frontends. **Special notes for your reviewer**: The previous approach of tracking requests on the client https://github.com/grafana/loki/pull/9781 has been abandoned. Signed-off-by: Christian Haudum <christian.haudum@gmail.com> |
3 years ago |
|
|
8ca035ffbf
|
Log Volume: Do the prometheus-format conversion in dedicated middleware (#9776)
This PR moves the Prometheus-format conversion to it's own middleware. This keeps it all in one place and consolidates logic that was in many places. It also sets us up to make range queries as a next step. |
3 years ago |
|
|
6928aac776
|
loser tree: allow sequences to contain maxVal (#9057)
**What this PR does / why we need it**: The tree stores the loser in each node, or maxVal if the sequence has ended. If sequences can contain maxVal, we need to take care not to let an ended sequence overtake an active one. Some test cases from Charles who pointed out the issue in #9053. Note this situation cannot happen for real in Loki, since we don't expect log lines with a timestamp that far into the future, but this is supposed to be a re-usable library. **Checklist** - [x] Reviewed the [`CONTRIBUTING.md`](https://github.com/grafana/loki/blob/main/CONTRIBUTING.md) guide (**required**) - NA Documentation added - [x] Tests updated - NA `CHANGELOG.md` updated - NA Changes that require user attention or interaction to upgrade are documented in `docs/sources/upgrading/_index.md` Co-authored-by: Charles Korn <charles.korn@grafana.com> |
3 years ago |
|
|
ed0d15a6bf
|
loki: enable PathPrefix for queryHandler endpoints (#8406)
**What this PR does / why we need it**: Hi, loki developers. I would like to use the option `http_path_prefix` as described in the official documentation. This setting is valid for endpoints defined at |
3 years ago |
|
|
3e1f2fc273
|
caching: do not try to fill the gap in log results cache when the new query interval does not overlap the cached query interval (#9757)
**What this PR does / why we need it**:
Currently, when we find a relevant cached negative response for a logs
query, we do the following:
* If the cached query completely covers the new query:
* return back an empty response.
* else:
* fill the gaps on either/both sides of the cached query.
The problem with filling the gaps is that when the cached query does not
overlap at all with the new query, we have to extend the query beyond
what the query requests for. However, with the logs query, we have a
limit on the number of lines we can send back in the response. So, this
could result in the query response having logs which were not requested
by the query, which then get filtered out by the [response
extractor](
|
3 years ago |
|
|
10e55a6359
|
store: fix incorrect usage of period config in table range (#9754)
**What this PR does / why we need it**:
We are incorrectly taking reference to a loop variable in store init, I
overlooked this part as the reference was being taken in the call to
`GetIndexTableNumberRange`
As a result of this, `TableRange` of each period (which is used by
index-shipper) points to the latest `periodConfig`. This in itself is
not a problem if the index prefix doesn't change as we use the
`periodConfig` only to generate the `tableName`. But if the index prefix
changes across periods, we end up losing access to the indexes using the
old prefix.
**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
- [ ] 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/upgrading/_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 |
|
|
35465d0297
|
Fix instant query summary split stats (#9773)
**What this PR does / why we need it**:
Fix instant query summary statistic's `splits` corresponding to the
number of subqueries a query is split into based on
`split_queries_by_interval`.
* Update rangemapper with a statistics structure to include the number
of split queries a query is mapped into.
* In the `split_by_range` middleware once the mapped query is returned
update the middleware statistics with the number of split queries. This
value will then be merged with the statistics of the Loki response.
**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
- [ ] 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/upgrading/_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 |
|
|
4da0f63789
|
Remove unused Value field (#9774)
We didn't end up needing the `Value` field because we can express everything we need to as selectors |
3 years ago |
|
|
a894c3ccf0
|
Bugfix: Fix logic of offset operator in instant query splitting (#9763)
**What this PR does / why we need it**:
Fix the logic of the `offset` operator for downstream queries on instant
query splitting of (range) vector aggregation expressions already
containing an offset.
**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/upgrading/_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 |
|
|
b611641fea
|
Add comments to clarify Grouping struct in Aggregation expressions (#9761)
**What this PR does / why we need it**:
Add comments to clarify the Grouping struct in Vector Aggregation and
Range Vector Aggregations expressions.
Related with PR: https://github.com/grafana/loki/pull/9515
**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/upgrading/_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 |
|
|
806674fdaa
|
Add log-volume feature flag (#9762)
Adds a feature flag for use with the new log-volume endpoints so associated features can be rolled out incrementally. |
3 years ago |
|
|
dbc3040739
|
Convert SeriesVolume response to prometheus-style (#9703)
Changes the response type of the label volume stats endpoint to return volumes as prometheus-style timeseries metrics. It currently only supports instant queries, but is a necessary step to eventually supporting range queries. |
3 years ago |
|
|
d74c67a9d0
|
Add version to TSDB index builder struct (#9566)
Add version as a property to the TSDB Index Builder, forcing users of the builder to specify a version for each builder instance. This is the first of many PRs that will add the TSDB index version to the schema version config. |
3 years ago |
|
|
ce81895241
|
Add shuffle sharding to index gateway (#9710)
This PR introduces shuffle sharding of the index files across index gateways where the shuffle sharding key is the tenant ID. Instead of having a global replication factor on the index gateways which affects all tenants the same, whether they are small or large tenants, the shuffle sharding allows to specify a shard factor per tenant (on top of the replication factor). This a) reduces the amount of indexes that are downloaded on individual index gateways in case of a high replication factor (which is currently the de-factor standard to deal with high load) and b) allows to scale tenants individually. The shuffle sharding algorithm is part of dskit's ring implementation and is not part of this commit. If you have set a high RF for the index gateways, it is required to reduce the RF and instead set the shard factor for the tenants. Signed-off-by: Christian Haudum <christian.haudum@gmail.com> |
3 years ago |
|
|
24e9efb907
|
Loki: Report event for `GetChunkRef` instead of SpanLogging (#9748)
**What this PR does / why we need it**: Modify our calls to `index_client.GetChunkRef` to report invocations through a span event instead of through span logging. This way we won't log a new log line for every GetChunkRef call. **Which issue(s) this PR fixes**: N/A |
3 years ago |
|
|
c6e18a2efb
|
Loki: Humanize downloaded file size (bytes format) (#9746)
**What this PR does / why we need it**: Humanize reported size of downloaded file. **Which issue(s) this PR fixes**: N/A |
3 years ago |
|
|
c0d9a2b4ba
|
Log push failures per-entry instead of in batches (#9720)
**What this PR does / why we need it**: Modify how we log push errors to do it per-entry instead of accumulating all errors and then logging them all in a single pass. **Which issue(s) this PR fixes**: N/A |
3 years ago |
|
|
74a4dca54e
|
fix(async_store): Fix the `storageconfig.EnableAsyncStore` config (#9725)
**What this PR does / why we need it**: During reverting this [PR](https://github.com/grafana/loki/pull/9715). I missed one important flag switch. Which this PR fixes it. **Which issue(s) this PR fixes**: Fixes NA **Special notes for your reviewer**: We found a bug on querier due to async_store and we tracked down to[ this PR](https://github.com/grafana/loki/pull/9476). So I reverted the PR in [this PR ](https://github.com/grafana/loki/pull/9715)(manually. Auto revert was not possible as things changed a lot meanwhile) But during my revert PR I missed switching this async store config. **Checklist** - [x] Reviewed the [`CONTRIBUTING.md`](https://github.com/grafana/loki/blob/main/CONTRIBUTING.md) guide (**required**) Signed-off-by: Kaviraj <kavirajkanagaraj@gmail.com> |
3 years ago |
|
|
695ea32226
|
stores/series tests: use abstractions over Labels (#9613)
**What this PR does / why we need it**:
Stop assuming `labels.Labels` is a slice.
**Special notes for your reviewer:**
This PR only touches tests.
Upstream Prometheus is using a different implementation of
`labels.Labels`, so I plan to create a series of PRs which make Loki
compatible with that. #9532 was the first.
**Checklist**
- [x] Reviewed the
[`CONTRIBUTING.md`](https://github.com/grafana/loki/blob/main/CONTRIBUTING.md)
guide (**required**)
- NA Documentation added
- [x] Tests updated
- NA `CHANGELOG.md` updated
- NA Changes that require user attention or interaction to upgrade are
documented in `docs/sources/upgrading/_index.md`
- NA 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 |
|
|
904ea0586a
|
Remove some unused code (#9611)
**What this PR does / why we need it**:
Remove some functions I came across while making Loki compatible with
different `Labels` structures.
Move `MetricToLabels` to the only place it is now used, and make it call
abstractions instead of assuming `Labels` is a slice.
**Checklist**
- [x] Reviewed the
[`CONTRIBUTING.md`](https://github.com/grafana/loki/blob/main/CONTRIBUTING.md)
guide (**required**)
- NA Documentation added
- NA Tests updated
- NA `CHANGELOG.md` updated
- NA Changes that require user attention or interaction to upgrade are
documented in `docs/sources/upgrading/_index.md`
- NA 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 |
|
|
61d407b4bb
|
Add keep stage to LogQL (#9693)
**What this PR does / why we need it**: This PR adds a new `keep` stage to LogQL. It allows filtering specific labels and helps to avoid hitting the _max streams per query_ limit by keeping only specific labels in the label set. It works the opposite of [drop stage](https://grafana.com/docs/loki/latest/logql/log_queries/#drop-labels-expression). **Special notes for your reviewer**: We do not drop [special error labels]( |
3 years ago |
|
|
b7359c5d53
|
Revert "Add summary stats and metrics for stats cache (#9536)" (#9721)
This reverts commit
|
3 years ago |
|
|
4c0e01b93f
|
revert(9476): Bringback async store like before for the queriers (#9715)
This seems to cause some issue with `querier`, not getting chunks from ingesters correctly via `async_store`. I narrowed down to this PR. But hard `revert` seems not possible anymore. So created this manually. https://github.com/grafana/loki/pull/9476 Signed-off-by: Kaviraj <kavirajkanagaraj@gmail.com> |
3 years ago |
|
|
db97058a84
|
Series volume endpoint (#9704)
This changes the `label_volume` endpoint to the `series_volume`
endpoint. The new endpoint still returns volumes but now it does it for
the requested streams defined by the selector names passed rather than
individual labels. All relevant non-requested labels are aggregated into
the returned results
ex: Assume we have the following streams:
```
{cluster="prod", team="A", component="foo"}
{cluster="prod", team="B", component="foo"}
{cluster="dev", team="A", component="foo"}
{cluster="dev", team="B", component="foo"}
```
- requesting `{cluster="prod"}` returns one result for all streams
containing `{cluster="prod"}`
- requesting `{cluster=~".+"}` returns two results for the streams
containing `{cluster="prod"}` and `{cluster="dev"}`
- requesting `{cluster=~".+", team=".+"}` returns four results for the
streams containing:
```
{cluster="prod", team="A"}
{cluster="prod", team="B"}
{cluster="dev", team="A"}
{cluster="dev", team="B"}
```
---------
Co-authored-by: Trevor Whitney <trevorjwhitney@gmail.com>
|
3 years ago |
|
|
79485cd30d
|
Add handling of timezones in unixToTime tests (#9707)
**What this PR does / why we need it**:
The unit tests for unixToTime do not take the current timezone into
account.
**Checklist**
- [x] 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`
- [ ] 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 |
|
|
7069b897e5
|
Fix Ruler remote write panic (#9662)
**What this PR does / why we need it**: This PR fixes the Ruler remote write panic, caused by the no-op scrape manager not being correctly configured. |
3 years ago |
|
|
4a56445686
|
Upgrade `golangci-lint` and fix linting errors (#9601)
**What this PR does / why we need it**: Upgrade `golangci-lint` and fixes all the errors. The upgrade includes some stricter linting. |
3 years ago |
|
|
065bee7e72
|
Label Volume Endpoint (#9588)
For a given set of matchers, returns the top N associated label/value
pairs by volume. A query for `{cluster=prod}` will return
```
cluster=prod: size (total logs matching this matcher)
.
.
.
nth-label=nth-value
```
This is to service use cases where users want to understand where their
log volume has come from by label without making multiple requests to
the stats endpoint.
Note: This PR is a monster but it's mostly plumbing. I've pointed out
the most interesting bits that actually get the volumes from
ingesters/indexs
|
3 years ago |
|
|
57f9452231
|
Revert 9217 chaudum/tsdb chunkrefs pool (#9685)
Revert #9217 (potential bug in query result) --------- Signed-off-by: Kaviraj <kavirajkanagaraj@gmail.com> |
3 years ago |
|
|
73ac208981
|
Improve docs for empty value in cache compression config (#9649)
**What this PR does / why we need it**:
Follow up PR for
https://github.com/grafana/loki/pull/9535#discussion_r1218167670
**Checklist**
- [x] Reviewed the
[`CONTRIBUTING.md`](https://github.com/grafana/loki/blob/main/CONTRIBUTING.md)
guide (**required**)
- [x] Documentation added
- [ ] Tests updated
- [ ] `CHANGELOG.md` updated
- [ ] Changes that require user attention or interaction to upgrade are
documented in `docs/sources/upgrading/_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 |
|
|
c6fbff26e1
|
Add config to avoid caching stats for recent data (#9537)
**What this PR does / why we need it**: When we query the stats for recent data, we query both the ingesters and the index gateways for the stats. |
3 years ago |
|
|
22779e13c5
|
Fix date template function with epoch times (#8886)
**What this PR does / why we need it**: Adds new toUnixEpoch... functions to convert from a string with a Unix/Epoch time to an integer that can be used in the existing `toDate` function. Note that these are the opposites of some of the functions introduced in https://github.com/grafana/loki/pull/8774. **Which issue(s) this PR fixes**: Fixes https://github.com/grafana/loki/issues/8624. **Special notes for your reviewer**: **Checklist** - [ ] Reviewed the [`CONTRIBUTING.md`](https://github.com/grafana/loki/blob/main/CONTRIBUTING.md) guide (**required**) - [X] 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` --------- Signed-off-by: Michel Hollands <michel.hollands@grafana.com> |
3 years ago |
|
|
b1917a6178
|
add "alignLeft" and "alignRight" functions (#9672)
Fixes https://github.com/grafana/loki/issues/9667 |
3 years ago |
|
|
98d1307c7d
|
config: ensure storage config defaults apply to named stores (#9650)
**What this PR does / why we need it**: Since named store config does not register any flags, storage configs defined under it do not get the defaults. For example [aws_storage_config](https://grafana.com/docs/loki/latest/configuration/#aws_storage_config) sets the default `storage_class` to `STANDARD`, but the same doesn't get applied by default when using named stores. This PR ensures that named storage configs are always assigned default values when they are unmarshalled by implementing `yaml.Unmarshaler` interface |
3 years ago |
|
|
1db560fdc1
|
Adding background cache (en|de)queue counters (#9665)
**What this PR does / why we need it**: The background writeback cache exposes gauge metric currently for the current queue size. Gauges can be useful, but they are susceptible to sample errors because they only represent the point in time as the time of the scrape. Exposing counters for the bytes (en|de)queued to/from the cache will be more useful because they can be aggregated. Signed-off-by: Danny Kopping <danny.kopping@grafana.com> |
3 years ago |
|
|
609bc22933
|
Distributor: Make key configurable when logging failures (#9659)
**What this PR does / why we need it**: Make appending `insight=true` key-value pair to log failures configurable. **Which issue(s) this PR fixes**: N/A |
3 years ago |
|
|
79c5fdd9c0
|
Canary: Refactor how the direct Canary push works (#9569)
**What this PR does / why we need it**:
When doing some testing a while back I ran into several cases were we
didn't handle errors/retries properly in the code we added for the
canaries to send directly to Loki. The changes here effectively
duplicate the way promtail's client does sends to Loki which is code
we've been using/relying on for years now.
I also had a hard time following the previous implementation which used
the io.Writer interface for swapping out writing to stdout vs pushing to
Loki and refactored this to use a new interface `EntryWriter` which has
implementations that write to stdout and to Loki
Unfortunately the changes in the diff don't read super well with this
refactoring so hopefully the explanation helps.
**Which issue(s) this PR fixes**:
Fixes #<issue number>
**Special notes for your reviewer**:
**Checklist**
- [x] Reviewed the
[`CONTRIBUTING.md`](https://github.com/grafana/loki/blob/main/CONTRIBUTING.md)
guide (**required**)
- [ ] Documentation added
- [ ] Tests updated
- [ ] `CHANGELOG.md` updated
- [ ] Changes that require user attention or interaction to upgrade are
documented in `docs/sources/upgrading/_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 |
|
|
eb7dae4583
|
Loki: Improve error message when step too low (#9641)
**What this PR does / why we need it**: In https://github.com/grafana/grafana/pull/69648 we are in Grafana introducing a step editor in Loki. Unfortunately, the error message when user sets too low step parameter is hard to understand, so I am proposing following change to make it more understandable and actionable. Let me know what do you think. --------- Co-authored-by: J Stickler <julie.stickler@grafana.com> |
3 years ago |
|
|
af287ac3eb
|
Add summary stats and metrics for stats cache (#9536)
**What this PR does / why we need it**:
When a query finishes, we return (and log) the following stats:
```go
Cache.Chunk.Requests 0
Cache.Chunk.EntriesRequested 0
Cache.Chunk.EntriesFound 0
Cache.Chunk.EntriesStored 0
Cache.Chunk.BytesSent 0 B
Cache.Chunk.BytesReceived 0 B
Cache.Chunk.DownloadTime 0s
Cache.Index.Requests 0
Cache.Index.EntriesRequested 0
Cache.Index.EntriesFound 0
Cache.Index.EntriesStored 0
Cache.Index.BytesSent 0 B
Cache.Index.BytesReceived 0 B
Cache.Index.DownloadTime 0s
Cache.Result.Requests 13
Cache.Result.EntriesRequested 13
Cache.Result.EntriesFound 13
Cache.Result.EntriesStored 0
Cache.Result.BytesSent 0 B
Cache.Result.BytesReceived 2.5 kB
Cache.Result.DownloadTime 4.600266ms
```
In addition to that, we log the following in metrics.go:
```
level=info ts=2023-05-29T09:17:10.93029945Z caller=metrics.go:152 component=frontend org_id=145265 traceID=52d59b78fe6b9221 sampled=true latency=fast query="{cluster=\"dev-us-central-0\", namespace=~\"loki.*\", container=~\"distributor|ingester
|promtail|index-gateway|compactor\"} |= \"thislinewillnotexist\"" query_hash=1194136170 query_type=filter range_type=range length=3h0m0s start_delta=165h37m24.930289434s end_delta=162h37m24.930289612s step=43s duration=2.473055ms status=200 lim
it=30 returned_lines=0 throughput=0B total_bytes=0B lines_per_second=0 total_lines=0 total_entries=0 store_chunks_download_time=0s queue_time=0s splits=13 shards=0 cache_chunk_req=0 cache_chunk_hit=0 cache_chunk_bytes_stored=0 cache_chunk_bytes
_fetched=0 cache_chunk_download_time=0s cache_index_req=0 cache_index_hit=0 cache_index_download_time=0s cache_result_req=13 cache_result_hit=13 cache_result_download_time=4.600266ms
```
With the goal of being able to better monitor how the stats cache is
performing; this PR adds stats for the index stats cache, similarly to
how it's done for the results cache.
Here's an example of the new stats being returned and printed:
```go
...
Cache.StatsResult.Requests 180
Cache.StatsResult.EntriesRequested 129
Cache.StatsResult.EntriesFound 129
Cache.StatsResult.EntriesStored 51
Cache.StatsResult.BytesSent 0 B
Cache.StatsResult.BytesReceived 75 kB
...
```
And the new stats from metrics.go
```
... caller=metrics.go:155 ... cache_stats_results_req=129 cache_stats_results_hit=129 cache_stats_results_download_ti
me=156.864429ms ...
```
**Special notes for your reviewer**:
- Blocked by https://github.com/grafana/loki/pull/9535
- Note the new`stats.GetOrCreateContext` func. It's used inside the
`query.Exec` method so we don't overwrite the stats added in the stats
middleware.
**Checklist**
- [x] 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`
- [ ] 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 |
|
|
1694ad0f9b
|
Stats cache can be configured independently (#9535)
**What this PR does / why we need it**:
Before this PR, the index stats cache would use the same config as the
query results cache. This was a limitation since:
1. We would not be able to point to a different cache for storing the
index stats if needed.
2. We would not be able to add specific settings for this cache, without
adding it to the results cache.
In this PR, we refactor the index stats cache config to be independently
configurable. Note that if it's not configured, it will try to use the
results cache settings.
**Which issue(s) this PR fixes**:
This is needed for:
- https://github.com/grafana/loki/pull/9537
- https://github.com/grafana/loki/pull/9536
**Special notes for your reviewer**:
- This PR also refactors all the tripperwares in rountrip.go to reuse
the same stats tripperware instead of each one creating their own.
- Configuring a new cache in rountrip.go is a requirement for
https://github.com/grafana/loki/pull/9536 so the stats summary can
distinguish before the stats cache and the results cache.
**Checklist**
- [x] Reviewed the
[`CONTRIBUTING.md`](https://github.com/grafana/loki/blob/main/CONTRIBUTING.md)
guide (**required**)
- [x] Documentation added
- [x] Tests updated
- [x] `CHANGELOG.md` updated
- [ ] Changes that require user attention or interaction to upgrade are
documented in `docs/sources/upgrading/_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 |
|
|
3c52034d63
|
[logcli] fixed query command that is run against user's bucket with TSDB index enabled (#9597)
**What this PR does / why we need it**:
set TSDB shipper mode to ReadOnly and disabled indexGatewayClient during
local query run. Also, I increase index downloading timeout to 1m
because the users run the query from local machines that not always have
more than 100Mbps
**Which issue(s) this PR fixes**:
Fixes #9555
**Special notes for your reviewer**:
Unfortunately, we do not have similar tests and test architecture to
cover it with unit tests properly.
**Checklist**
- [x] Reviewed the
[`CONTRIBUTING.md`](https://github.com/grafana/loki/blob/main/CONTRIBUTING.md)
guide (**required**)
- [ ] Documentation added
- [ ] Tests updated
- [x] `CHANGELOG.md` updated
- [x] Changes that require user attention or interaction to upgrade are
documented in `docs/sources/upgrading/_index.md`
- [x] 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 |
|
|
0a5e149ea5
|
query-scheduler: fix query distribution in SSD mode (#9471)
**What this PR does / why we need it**: When we run the `query-scheduler` in `ring` mode, `queriers` and `query-frontend` discover the available `query-scheduler` instances using the ring. However, we have a problem when `query-schedulers` are not running in the same process as queriers and query-frontend since [we try to get the ring client interface from the scheduler instance]( |
3 years ago |